diff options
author | Bandan Das <bsd@redhat.com> | 2016-07-13 01:18:48 +0300 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2016-07-14 10:02:46 +0300 |
commit | 8d5cf1610da526c3c1286bd7b3ac9f35f96ed43d (patch) | |
tree | a6451ae6fb09cb3661db7db118aeed87d4e61de8 /arch/x86/kvm | |
parent | 6d5315b3a60cc9b136b86b4dafeb73bf272d24c0 (diff) | |
download | linux-8d5cf1610da526c3c1286bd7b3ac9f35f96ed43d.tar.xz |
kvm: mmu: extend the is_present check to 32 bits
This is safe because this function is called
on host controlled page table and non-present/non-MMIO
sptes never use bits 1..31. For the EPT case, this
ensures that cases where only the execute bit is set
is marked valid.
Signed-off-by: Bandan Das <bsd@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'arch/x86/kvm')
-rw-r--r-- | arch/x86/kvm/mmu.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c index 837bf23c5b06..55a20c0524fe 100644 --- a/arch/x86/kvm/mmu.c +++ b/arch/x86/kvm/mmu.c @@ -304,7 +304,7 @@ static int is_nx(struct kvm_vcpu *vcpu) static int is_shadow_present_pte(u64 pte) { - return pte & PT_PRESENT_MASK && !is_mmio_spte(pte); + return (pte & 0xFFFFFFFFull) && !is_mmio_spte(pte); } static int is_large_pte(u64 pte) |