diff options
author | Avi Kivity <avi@redhat.com> | 2011-06-06 16:11:54 +0300 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2011-07-12 13:16:26 +0300 |
commit | 411c588dfb863feee78b721d5e7c86ac38921c49 (patch) | |
tree | bb60c136f0392fbbd8f222fd2049f265746a7eae /arch/x86/include/asm | |
parent | a01c8f9b4e266df1d7166d23216f2060648f862d (diff) | |
download | op-kernel-dev-411c588dfb863feee78b721d5e7c86ac38921c49.zip op-kernel-dev-411c588dfb863feee78b721d5e7c86ac38921c49.tar.gz |
KVM: MMU: Adjust shadow paging to work when SMEP=1 and CR0.WP=0
When CR0.WP=0, we sometimes map user pages as kernel pages (to allow
the kernel to write to them). Unfortunately this also allows the kernel
to fetch from these pages, even if CR4.SMEP is set.
Adjust for this by also setting NX on the spte in these circumstances.
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/x86/include/asm')
-rw-r--r-- | arch/x86/include/asm/kvm_host.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h index 554be45..da6bbee 100644 --- a/arch/x86/include/asm/kvm_host.h +++ b/arch/x86/include/asm/kvm_host.h @@ -205,6 +205,7 @@ union kvm_mmu_page_role { unsigned invalid:1; unsigned nxe:1; unsigned cr0_wp:1; + unsigned smep_andnot_wp:1; }; }; |