]> xenbits.xensource.com Git - xen.git/commitdiff
x86/msr: fix handling of MSR_IA32_PERF_{STATUS/CTL} (again, part 2)
authorJan Beulich <jbeulich@suse.com>
Fri, 5 Feb 2021 07:52:54 +0000 (08:52 +0100)
committerJan Beulich <jbeulich@suse.com>
Fri, 5 Feb 2021 07:52:54 +0000 (08:52 +0100)
X86_VENDOR_* aren't bit masks in the older trees.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
xen/arch/x86/msr.c

index aefe0cbb4b922fe35ae6b5003b9a8edcee992838..f53a186f6cbc19392fcc295f9e030a3c525ab0f8 100644 (file)
@@ -441,7 +441,8 @@ int guest_wrmsr(struct vcpu *v, uint32_t msr, uint64_t val)
          * a cpufreq controller dom0 which has full access.
          */
     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;
 
         if ( likely(!is_cpufreq_controller(d)) || wrmsr_safe(msr, val) == 0 )