mirror of
https://github.com/xen-project/xen.git
synced 2026-10-30 03:00:05 +01:00
x86/cpuid: Handle the long vendor string in guest_cpuid()
Leaves 0x80000002 through 0x80000004 are plain ASCII text, and are left exactly as the toolstack chooses. Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> Reviewed-by: Doug Goldstein <cardoe@cardoe.com> Reviewed-by: Jan Beulich <jbeulich@suse.com>
This commit is contained in:
1 parent
07929c9985
commit
a75f6163cf
1 file changed
+3
-3
@@ -698,7 +698,7 @@ static void pv_cpuid(uint32_t leaf, uint32_t subleaf, struct cpuid_leaf *res)
|
||||
case 0x2 ... 0x3:
|
||||
case 0x7 ... 0x9:
|
||||
case 0xc ... XSTATE_CPUID:
|
||||
case 0x80000000 ... 0x80000001:
|
||||
case 0x80000000 ... 0x80000004:
|
||||
ASSERT_UNREACHABLE();
|
||||
/* Now handled in guest_cpuid(). */
|
||||
}
|
||||
@@ -815,7 +815,7 @@ static void hvm_cpuid(uint32_t leaf, uint32_t subleaf, struct cpuid_leaf *res)
|
||||
case 0x2 ... 0x3:
|
||||
case 0x7 ... 0x9:
|
||||
case 0xc ... XSTATE_CPUID:
|
||||
case 0x80000000 ... 0x80000001:
|
||||
case 0x80000000 ... 0x80000004:
|
||||
ASSERT_UNREACHABLE();
|
||||
/* Now handled in guest_cpuid(). */
|
||||
}
|
||||
@@ -898,7 +898,7 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf,
|
||||
default:
|
||||
goto legacy;
|
||||
|
||||
case 0x80000000 ... 0x80000001:
|
||||
case 0x80000000 ... 0x80000004:
|
||||
*res = p->extd.raw[leaf & 0xffff];
|
||||
break;
|
||||
}
|
||||
|
||||