On 26/08/14 13:40, Paolo Bonzini wrote: > Il 26/08/2014 10:28, Christian Borntraeger ha scritto: >> 2. We use KVM_REQ_TLB_FLUSH instead of open coding tlb flushes > > Why is this needed? It seems slower than what you are replacing. > > Supporting KVM_REQ_TLB_FLUSH is useful (the first hunk of the patch); > hiding the control block manipulation behind a function would also be > good. However, x86 needs the KVM_REQ_TLB_FLUSH for local flushes only > because Intel wants you to flush on the CPU where the VM will next run. > It would not be necessary on AMD for example. > > So if you do not need it on s390, you do not have to do it. > > Paolo > David is on vacation, so let my try to answer :-) This patch is more of a cleanup - making clear whats going on. Its not needed for something special. It does two things: - encapsulate the TLB flushing - Yes, a function hiding that would also work. We decided to reuse an existing interface - serialize the TLB flushing against other control block updates. This is not necessary, it just happens as a consequence of being a request Agreed, it will be a bit slower (instead of setting a field we now also set and test a request bit). Since we only need to do that in rare cases (specific control register updates via userspace and prefix setting) The performance does not matter at all. I can take out that patch and redo the tag, or leave it in. Let me know. Christian -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html