commit 41cb383f42d0cb51d8e3e25e3ecebc954dd4196f made a guest-visible change by adding the PCLMULQDQ bit to Westmere without adding compatibility code to keep the ABI older machine-types. This patch fixes it by adding the missing compat code.
Signed-off-by: Eduardo Habkost <ehabk...@redhat.com> --- Bug detected by the virt-test CPUID-dump comparison test case, available at: https://github.com/autotest/virt-test/pull/714 --- hw/i386/pc_piix.c | 1 + hw/i386/pc_q35.c | 1 + 2 files changed, 2 insertions(+) diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c index ab25458..2817092 100644 --- a/hw/i386/pc_piix.c +++ b/hw/i386/pc_piix.c @@ -259,6 +259,7 @@ static void pc_init_pci_1_4(QEMUMachineInitArgs *args) { has_pvpanic = false; x86_cpu_compat_set_features("n270", FEAT_1_ECX, 0, CPUID_EXT_MOVBE); + x86_cpu_compat_set_features("Westmere", FEAT_1_ECX, 0, CPUID_EXT_PCLMULQDQ); pc_init_pci_1_5(args); } diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c index 2f35d12..25c6b33 100644 --- a/hw/i386/pc_q35.c +++ b/hw/i386/pc_q35.c @@ -227,6 +227,7 @@ static void pc_q35_init_1_4(QEMUMachineInitArgs *args) { has_pvpanic = false; x86_cpu_compat_set_features("n270", FEAT_1_ECX, 0, CPUID_EXT_MOVBE); + x86_cpu_compat_set_features("Westmere", FEAT_1_ECX, 0, CPUID_EXT_PCLMULQDQ); pc_q35_init_1_5(args); } -- 1.8.3.1