KVM: VMX: Enforce EPT pagetable level checking
PATCH 1/1 KVM: VMX: Enforce EPT pagetable level checking
We only support 4 levels EPT pagetable now.
Signed-off-by Sheng Yang <[email protected]>
--- arch/x86/kvm/vmx.c | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-)
arch/x86/kvm/vmx.c +7 -1
@@ -339,6 +339,11 @@ static inline bool cpu_has_vmx_ept_1g_page(void)return vmx_capability.ept &VMX_EPT_1GB_PAGE_BIT ; } +static inline bool cpu_has_vmx_ept_4levels (void ) +{ +return vmx_capability.ept &VMX_EPT_PAGE_WALK_4_BIT ; +} +static inline bool cpu_has_vmx_invept_individual_addr (void ) {return vmx_capability.ept &VMX_EPT_EXTENT_INDIVIDUAL_BIT ;
@@ -1567,7 +1572,8 @@ static __init int hardware_setup(void)if (!cpu_has_vmx_vpid ()) enable_vpid =0 ; -if (!cpu_has_vmx_ept ()) { +if (!cpu_has_vmx_ept () || + !cpu_has_vmx_ept_4levels ()) { enable_ept =0 ; enable_unrestricted_guest =0 ; }
Signature · 1 line
1.7.0.1
Marcelo Tosatti
AppliedQuoted 6 lines · Sheng Yang
We only support 4 levels EPT pagetable now.
Signed-off-by Sheng Yang <[email protected]>--- arch/x86/kvm/vmx.c | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-)
Applied, thanks.