Re: [PATCH 0/4]: KVM: nVMX: Consider TLB are tagged with different EPTP if L1 uses EPT

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 06/09/2018 15:32, Liran Alon wrote:
> Hi,
> 
> This patch series aim to enhance L1<->L2 transitions to avoid
> unnecessary TLB flushes in case L1 uses VPID and EPT.
> 
> The 1st patch fixes a bug that INVEPT was executed on L1<->L2
> transitions to flush TLB but with the wrong EPTP because it hasn't been
> loaded yet with the destination EPTP. The patch handles this issue
> easily by just delaying vmx_flush_tlb() to be called after EPTP has been
> set to destination by using KVM_REQ_TLB_FLUSH.
> 
> The 2nd patch avoids unnecessary flushing TLB on L2->L1 VMExit if L1
> uses VPID and EPT. This is because TLB entries of L1 and L2 are
> separated by the fact they are tagged with different EPTP.
> 
> The 3rd patch modifies L1->L2 VMEntry code such that it will set
> vmcs02->vpid to vmcs12->vpid in case L1 uses EPT. This leverages the
> fact TLB entries of L1 and L2 are separated by being tagged with
> different EPTPs and therefore we don't need to use the special vpid02.
> 
> The 4rd patch then modifies L1->L2 VMEntry code to avoid unnecessary
> flushing TLB in case L1 uses both VPID and EPT as TLB entries of L1 and
> L2 are separated by different EPTP tags.

Queued patches 1-2-4, thanks.

Paolo




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux