On 31/05/2018 14:52, Liran Alon wrote: > > ----- pbonzini@xxxxxxxxxx wrote: > >> On 23/05/2018 16:44, Sean Christopherson wrote: >>> Unloading the MMU on nested entry/exit doesn't seem deliberate, >>> e.g. why bother with VPID handling in prepare_vmcs02() if KVM >>> intends to unconditionally flush? I think figuring out how to >>> avoid unloading the MMU in those cases will resolve the issue >>> of the TLB being flushed on every switch between L1 and L2, >>> though I get the feeling that that will mean doing a holistic >>> analysis of the (nested) MMU handling. >> >> My plan there was just to add a third kvm_mmu struct, which (as a >> start) requires getting rid of all references to vcpu->arch.mmu in >> arch/x86/kvm/. >> >> Paolo > > I'm planning to a submit a series to handle this issue. > However, I'm not sure I got your plan. Can you elaborate? > How do you vision adding a third kvm_mmu struct will help resolve this issue? I would like to avoid the kvm_mmu_reset_context on nested vmentry/vmexit. Hopefully everything flows from that... Paolo