[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 5/6] x86/cpuid: Handle the long vendor string in guest_cpuid()
Leaves 0x80000002 through 0x80000004 are plain ASCII text, and require no specific recalculation. Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> --- CC: Jan Beulich <JBeulich@xxxxxxxx> --- xen/arch/x86/cpuid.c | 3 +++ xen/include/asm-x86/cpuid.h | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/cpuid.c b/xen/arch/x86/cpuid.c index dc76cf4..7926d0b 100644 --- a/xen/arch/x86/cpuid.c +++ b/xen/arch/x86/cpuid.c @@ -706,6 +706,7 @@ static void pv_cpuid(uint32_t leaf, uint32_t subleaf, struct cpuid_leaf *res) case 0x7: case XSTATE_CPUID: case 0x80000000: + case 0x80000002 ... 0x80000004: ASSERT_UNREACHABLE(); /* Now handled in guest_cpuid(). */ } @@ -856,6 +857,7 @@ static void hvm_cpuid(uint32_t leaf, uint32_t subleaf, struct cpuid_leaf *res) case 0x7: case XSTATE_CPUID: case 0x80000000: + case 0x80000002 ... 0x80000004: ASSERT_UNREACHABLE(); /* Now handled in guest_cpuid(). */ } @@ -936,6 +938,7 @@ void guest_cpuid(const struct vcpu *v, uint32_t leaf, goto legacy; case 0x80000000: + case 0x80000002 ... 0x80000004: *res = p->extd.raw[leaf & 0xffff]; break; } diff --git a/xen/include/asm-x86/cpuid.h b/xen/include/asm-x86/cpuid.h index 4712b73..d181e9a 100644 --- a/xen/include/asm-x86/cpuid.h +++ b/xen/include/asm-x86/cpuid.h @@ -81,7 +81,7 @@ struct cpuid_policy * - All of the feat and xstate unions * - max_{,sub}leaf * - All FEATURESET_* words - * - Short vendor infomation + * - Short and long vendor infomation * * Per-domain objects: * @@ -89,7 +89,7 @@ struct cpuid_policy * - All of the feat and xstate unions * - max_{,sub}leaf * - All FEATURESET_* words - * - Short vendor infomation + * - Short and long vendor infomation * * Everything else should be considered inaccurate, and not necesserily 0. */ -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |