[libvirt] [PATCH 0/6] qemu: Fix "Property '.pconfig' not found" error

Jiri Denemark posted 6 patches 5 years ago
Test syntax-check failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/cover.1573504055.git.jdenemar@redhat.com
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
[libvirt] [PATCH 0/6] qemu: Fix "Property '.pconfig' not found" error
Posted by Jiri Denemark 5 years ago
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@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Re: [libvirt] [PATCH 0/6] qemu: Fix "Property '.pconfig' not found" error
Posted by Daniel P. Berrangé 5 years ago
On Mon, Nov 11, 2019 at 09:35:31PM +0100, Jiri Denemark wrote:
> 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

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>


Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list