Commit 7096cbfb authored by Sean Christopherson's avatar Sean Christopherson Committed by Paolo Bonzini

KVM: VMX: Use "illegal GPA" helper for PT/RTIT output base check

Use kvm_vcpu_is_illegal_gpa() to check for a legal GPA when validating a
PT output base instead of open coding a clever, but difficult to read,
variant.  Code readability is far more important than shaving a few uops
in a slow path.

No functional change intended.
Suggested-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
Signed-off-by: default avatarSean Christopherson <sean.j.christopherson@intel.com>
Message-Id: <20200924194250.19137-6-sean.j.christopherson@intel.com>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent dc46515c
...@@ -1037,7 +1037,7 @@ static inline bool pt_can_write_msr(struct vcpu_vmx *vmx) ...@@ -1037,7 +1037,7 @@ static inline bool pt_can_write_msr(struct vcpu_vmx *vmx)
static inline bool pt_output_base_valid(struct kvm_vcpu *vcpu, u64 base) static inline bool pt_output_base_valid(struct kvm_vcpu *vcpu, u64 base)
{ {
/* The base must be 128-byte aligned and a legal physical address. */ /* The base must be 128-byte aligned and a legal physical address. */
return !(base & (~((1UL << cpuid_maxphyaddr(vcpu)) - 1) | 0x7f)); return !kvm_vcpu_is_illegal_gpa(vcpu, base) && !(base & 0x7f);
} }
static inline void pt_load_msr(struct pt_ctx *ctx, u32 addr_range) static inline void pt_load_msr(struct pt_ctx *ctx, u32 addr_range)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment