From f1f322610718c40680ac09e66f6c82e69c78ba3a Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Thu, 4 Feb 2021 15:39:45 +0100 Subject: [PATCH] x86/msr: fix handling of MSR_IA32_PERF_{STATUS/CTL} (again) MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit X86_VENDOR_* aren't bit masks in the older trees. Reported-by: James Dingwall Signed-off-by: Jan Beulich Acked-by: Roger Pau Monné Reviewed-by: Andrew Cooper --- xen/arch/x86/msr.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/xen/arch/x86/msr.c b/xen/arch/x86/msr.c index 927ed625df..aefe0cbb4b 100644 --- a/xen/arch/x86/msr.c +++ b/xen/arch/x86/msr.c @@ -226,7 +226,8 @@ int guest_rdmsr(const struct vcpu *v, uint32_t msr, uint64_t *val) */ case MSR_IA32_PERF_STATUS: case MSR_IA32_PERF_CTL: - if ( !(cp->x86_vendor & (X86_VENDOR_INTEL | X86_VENDOR_CENTAUR)) ) + if ( cp->x86_vendor != X86_VENDOR_INTEL && + cp->x86_vendor != X86_VENDOR_CENTAUR ) goto gp_fault; *val = 0; -- 2.39.5