summaryrefslogtreecommitdiff
path: root/5f21b9fd-x86-cpuid-APIC-bit-clearing.patch
blob: ae969852875a086e24d823c2cdd4fea76a429d27 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# Commit 64219fa179c3e48adad12bfce3f6b3f1596cccbf
# Date 2020-07-29 19:03:41 +0100
# Author Fam Zheng <famzheng@amazon.com>
# Committer Andrew Cooper <andrew.cooper3@citrix.com>
x86/cpuid: Fix APIC bit clearing

The bug is obvious here, other places in this function used
"cpufeat_mask" correctly.

Fixed: b648feff8ea2 ("xen/x86: Improvements to in-hypervisor cpuid sanity checks")
Signed-off-by: Fam Zheng <famzheng@amazon.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>

--- a/xen/arch/x86/cpuid.c
+++ b/xen/arch/x86/cpuid.c
@@ -961,7 +961,7 @@ void guest_cpuid(const struct vcpu *v, u
         {
             /* Fast-forward MSR_APIC_BASE.EN. */
             if ( vlapic_hw_disabled(vcpu_vlapic(v)) )
-                res->d &= ~cpufeat_bit(X86_FEATURE_APIC);
+                res->d &= ~cpufeat_mask(X86_FEATURE_APIC);
 
             /*
              * PSE36 is not supported in shadow mode.  This bit should be