x86/cpuid: Alter the policy logic for leaf 0xb to be multi-invocation
authorAndrew Cooper <andrew.cooper3@citrix.com>
Wed, 11 Apr 2018 13:34:02 +0000 (13:34 +0000)
committerAndrew Cooper <andrew.cooper3@citrix.com>
Wed, 4 Jul 2018 11:12:15 +0000 (12:12 +0100)
commitc3f6eeeb88910a5a394dfb0dbd346253c3eec5cf
tree8181a4a08f9551621b45e5789f6fb50c203a928f
parent0932210ac0956fe0ce6f23cf73f56d7c2f9bc5df
x86/cpuid: Alter the policy logic for leaf 0xb to be multi-invocation

The new data lives in the .topo union, rather than being treated as a single
leaf in the basic union.

While adjusting cpuid_policy, pad .basic to CPUID_GUEST_NR_BASIC for the
benefit of people extending the number of leaves in the future.

Host data is scanned when filling in the raw policy, but Xen still discards
any toolstack settings for now.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
Acked-by: Wei Liu <wei.liu2@citrix.com>
tools/libxc/xc_cpuid_x86.c
xen/arch/x86/cpuid.c
xen/arch/x86/domctl.c
xen/include/asm-x86/cpuid.h