]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: vmx, svm: always run with EFER.NXE=1 when shadow paging is active
authorPaolo Bonzini <pbonzini@redhat.com>
Sun, 27 Oct 2019 15:23:23 +0000 (16:23 +0100)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 31 Oct 2019 11:13:44 +0000 (12:13 +0100)
commite4549f5d84d09325d7532b941647061748a4a38e
tree62e3c3208dadfa655c87e9917fff8e4ea2cdc7a8
parent93d61f363d779362943fd14db02f3b38b18bcf54
KVM: vmx, svm: always run with EFER.NXE=1 when shadow paging is active

VMX already does so if the host has SMEP, in order to support the combination of
CR0.WP=1 and CR4.SMEP=1.  However, it is perfectly safe to always do so, and in
fact VMX already ends up running with EFER.NXE=1 on old processors that lack the
"load EFER" controls, because it may help avoiding a slow MSR write.  Removing
all the conditionals simplifies the code.

SVM does not have similar code, but it should since recent AMD processors do
support SMEP.  So this patch also makes the code for the two vendors more similar
while fixing NPT=0, CR0.WP=1 and CR4.SMEP=1 on AMD processors.

Cc: stable@vger.kernel.org
Cc: Joerg Roedel <jroedel@suse.de>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/svm.c
arch/x86/kvm/vmx/vmx.c