Re: [PATCH 0/5] Fix EFER.NX=0 with EPT

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

 



On Wed, Apr 28, 2010 at 04:47:14PM +0300, Avi Kivity wrote:
> Currently we run with EFER.NX=1 on the guest even if the guest value is 0.
> This is fine with shadow, since we check bit 63 when instantiating a page
> table, and fault if bit 63 is set while EFER.NX is clear.
> 
> This doesn't work with EPT, since we no longer get the change to check guest
> ptes.  So we need to run with EFER.NX=0.
> 
> This is complicated by the fact that if we switch EFER.NX on the host, we'll
> trap immediately, since some host pages are mapped with the NX bit set.  As
> a result, we need to switch the MSR atomically during guest entry and exit.
> 
> This patchset implements the complications described above.
> 
> Avi Kivity (5):
>   KVM: Let vcpu structure alignment be determined at runtime
>   KVM: VMX: Add definition for msr autoload entry
>   KVM: VMX: Add definitions for guest and host EFER autoswitch vmcs
>     entries
>   KVM: VMX: Add facility to atomically switch MSRs on guest entry/exit
>   KVM: VMX: Atomically switch efer if EPT && !EFER.NX

Applied, thanks.

Out of curiosity, did you measure the vmentry/vmexit overhead?
--
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

[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