The pconfig feature was enabled in QEMU by accident in 3.1.0. All other newer versions do not support it and it was removed from the Icelake-Server CPU model in QEMU. We don't normally change our CPU models even when QEMU does so to avoid breaking migrations between different versions of libvirt. But we can safely do so in this specific case. QEMU never supported enabling pconfig so any domain which was able to start has pconfig disabled. With a small compatibility hack which explicitly disables pconfig when CPU model equals Icelake-Server in migratable domain definition, only one migration scenario stays broken (and there's nothing we can do about it): from any host to a host with libvirt < 5.10.0 and QEMU > 3.1.0. https://bugzilla.redhat.com/show_bug.cgi?id=1749672 Jiri Denemark (6): cpu_conf: Pass policy to CPU feature filtering callbacks qemuxml2*test: Add tests for Icelake-Server,-pconfig qemu: Drop disabled CPU features unknown to QEMU cpu_map: Drop comments about ospke cputest: Add data for Ice Lake Server CPU cpu_map: Drop pconfig from Icelake-Server CPU model src/conf/cpu_conf.c | 6 +- src/conf/cpu_conf.h | 1 + src/cpu/cpu_x86.c | 13 +- src/cpu/cpu_x86.h | 2 + src/cpu_map/x86_Cascadelake-Server.xml | 2 - src/cpu_map/x86_Icelake-Client.xml | 2 - src/cpu_map/x86_Icelake-Server.xml | 3 - src/qemu/qemu_capabilities.c | 1 + src/qemu/qemu_capabilities.h | 1 + src/qemu/qemu_domain.c | 23 + src/qemu/qemu_domain.h | 3 + src/qemu/qemu_migration_cookie.c | 3 + src/qemu/qemu_process.c | 32 + tests/cputest.c | 1 + .../x86_64-cpuid-Ice-Lake-Server-disabled.xml | 7 + .../x86_64-cpuid-Ice-Lake-Server-enabled.xml | 10 + .../x86_64-cpuid-Ice-Lake-Server-guest.xml | 35 + .../x86_64-cpuid-Ice-Lake-Server-host.xml | 36 + .../x86_64-cpuid-Ice-Lake-Server-json.xml | 16 + .../x86_64-cpuid-Ice-Lake-Server.json | 1142 +++++++++++++++++ .../x86_64-cpuid-Ice-Lake-Server.sig | 4 + .../x86_64-cpuid-Ice-Lake-Server.xml | 65 + ...u-Icelake-Server-pconfig.x86_64-3.1.0.args | 34 + ...-Icelake-Server-pconfig.x86_64-latest.args | 34 + .../cpu-Icelake-Server-pconfig.xml | 22 + tests/qemuxml2argvtest.c | 3 + ...pu-Icelake-Server-pconfig.x86_64-3.1.0.xml | 31 + ...u-Icelake-Server-pconfig.x86_64-latest.xml | 31 + tests/qemuxml2xmltest.c | 3 + 29 files changed, 1555 insertions(+), 11 deletions(-) create mode 100644 tests/cputestdata/x86_64-cpuid-Ice-Lake-Server-disabled.xml create mode 100644 tests/cputestdata/x86_64-cpuid-Ice-Lake-Server-enabled.xml create mode 100644 tests/cputestdata/x86_64-cpuid-Ice-Lake-Server-guest.xml create mode 100644 tests/cputestdata/x86_64-cpuid-Ice-Lake-Server-host.xml create mode 100644 tests/cputestdata/x86_64-cpuid-Ice-Lake-Server-json.xml create mode 100644 tests/cputestdata/x86_64-cpuid-Ice-Lake-Server.json create mode 100644 tests/cputestdata/x86_64-cpuid-Ice-Lake-Server.sig create mode 100644 tests/cputestdata/x86_64-cpuid-Ice-Lake-Server.xml create mode 100644 tests/qemuxml2argvdata/cpu-Icelake-Server-pconfig.x86_64-3.1.0.args create mode 100644 tests/qemuxml2argvdata/cpu-Icelake-Server-pconfig.x86_64-latest.args create mode 100644 tests/qemuxml2argvdata/cpu-Icelake-Server-pconfig.xml create mode 100644 tests/qemuxml2xmloutdata/cpu-Icelake-Server-pconfig.x86_64-3.1.0.xml create mode 100644 tests/qemuxml2xmloutdata/cpu-Icelake-Server-pconfig.x86_64-latest.xml -- 2.24.0 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list