diff options
author | Xiao Guangrong <guangrong.xiao@linux.intel.com> | 2015-08-05 07:04:23 +0300 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2015-08-05 13:47:24 +0300 |
commit | 81b8eebbc3511bfa21520314b07988a875a4d066 (patch) | |
tree | d54f72fbb220952aa8af25b61142562e641a9fe8 /arch/x86 | |
parent | 6dc98b868bc5d44cd5fd9be2a35e3d87902e8818 (diff) | |
download | linux-81b8eebbc3511bfa21520314b07988a875a4d066.tar.xz |
KVM: MMU: split reset_rsvds_bits_mask_ept
Since shadow ept page tables and Intel nested guest page tables have the
same format, split reset_rsvds_bits_mask_ept so that the logic can be
reused by later patches which check zero bits on sptes
Signed-off-by: Xiao Guangrong <guangrong.xiao@linux.intel.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'arch/x86')
-rw-r--r-- | arch/x86/kvm/mmu.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c index d58e6ccc01ba..a965f3f58586 100644 --- a/arch/x86/kvm/mmu.c +++ b/arch/x86/kvm/mmu.c @@ -3660,11 +3660,10 @@ static void reset_rsvds_bits_mask(struct kvm_vcpu *vcpu, is_pse(vcpu)); } -static void reset_rsvds_bits_mask_ept(struct kvm_vcpu *vcpu, - struct kvm_mmu *context, bool execonly) +static void +__reset_rsvds_bits_mask_ept(struct rsvd_bits_validate *rsvd_check, + int maxphyaddr, bool execonly) { - struct rsvd_bits_validate *rsvd_check = &context->guest_rsvd_check; - int maxphyaddr = cpuid_maxphyaddr(vcpu); int pte; rsvd_check->rsvd_bits_mask[0][3] = @@ -3693,6 +3692,13 @@ static void reset_rsvds_bits_mask_ept(struct kvm_vcpu *vcpu, } } +static void reset_rsvds_bits_mask_ept(struct kvm_vcpu *vcpu, + struct kvm_mmu *context, bool execonly) +{ + __reset_rsvds_bits_mask_ept(&context->guest_rsvd_check, + cpuid_maxphyaddr(vcpu), execonly); +} + static void update_permission_bitmask(struct kvm_vcpu *vcpu, struct kvm_mmu *mmu, bool ept) { |