diff options
author | Eduardo Habkost <ehabkost@redhat.com> | 2016-09-21 13:30:12 -0300 |
---|---|---|
committer | Eduardo Habkost <ehabkost@redhat.com> | 2016-09-27 16:17:17 -0300 |
commit | c39c0edf9bb3b968ba95484465a50c7b19f4aa3a (patch) | |
tree | a13088f4ca783ac84c9d3e40d87a6cf2e4caa6e8 /include | |
parent | df3e9af8fd02f22d03871975daa23ecbfcd48490 (diff) |
target-i386: Automatically set level/xlevel/xlevel2 when needed
Instead of requiring users and management software to be aware of
required CPUID level/xlevel/xlevel2 values for each feature,
automatically increase those values when features need them.
This was already done for CPUID[7].EBX, and is now made generic
for all CPUID feature flags. Unit test included, to make sure we
don't break ABI on older machine-types and don't mess with the
CPUID level values if they are explicitly set by the user.
Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/hw/i386/pc.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h index 29a6c9b60b..47bdf10cfd 100644 --- a/include/hw/i386/pc.h +++ b/include/hw/i386/pc.h @@ -374,6 +374,11 @@ bool e820_get_entry(int, uint32_t, uint64_t *, uint64_t *); .driver = TYPE_X86_CPU,\ .property = "l3-cache",\ .value = "off",\ + },\ + {\ + .driver = TYPE_X86_CPU,\ + .property = "full-cpuid-auto-level",\ + .value = "off",\ }, #define PC_COMPAT_2_6 \ |