[PATCH 00/22] qemu: Fix migration from libvirt older than 9.10.0 when vmx is enabled

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This series fixes a migration regression introduced in 9.10.0 release
which added support for a bunch of vmx-* CPU features. Domains with vmx
feature enabled started by libvirt 9.9.0 or older cannot be migrated to
current releases 9.10.0 and newer.

After this series migration works again with libvirt 9.9.0 and older in
both directions. Migration from the affected releases to the fixed
version works as well, but the other direction remains broken unless the
fix is backported.

See patches 1/22 and 4/22 for more details about the issue and the fix.

Fixes: https://gitlab.com/libvirt/libvirt/-/issues/568

Jiri Denemark (22):
  cpu: x86: Add support for adding features to existing CPU models
  qemu: domain: Check arch in qemuDomainMakeCPUMigratable
  conf: cpu: Introduce virCPUDefListFeatures
  qemu: domain: Drop added features from migratable CPU
  cpu_map: Do not ignore VMX features in sync_qemu_models script
  Add vmx-* features to Broadwell*
  Add vmx-* features to Cascadelake*
  Add vmx-* features to Conroe
  Add vmx-* features to Cooperlake
  Add vmx-* features to core{,2}duo
  Add vmx-* features to Haswell*
  Add vmx-* features to Icelake*
  Add vmx-* features to IvyBridge*
  Add vmx-* features to kvm*
  Add vmx-* features to Nehalem*
  Add vmx-* features to Penryn
  Add vmx-* features to SandyBridge*
  Add vmx-* features to SapphireRapids
  Add vmx-* features to Skylake*
  Add vmx-* features to Snowridge
  Add vmx-* features to Westmere*
  NEWS: Document the fix for migration or vmx enabled domains

 NEWS.rst                                      |  12 ++
 src/conf/cpu_conf.c                           |  24 ++++
 src/conf/cpu_conf.h                           |   3 +
 src/cpu/cpu_x86.c                             |  69 ++++++++++-
 src/cpu/cpu_x86.h                             |   3 +
 src/cpu_map/sync_qemu_models_i386.py          | 114 +++++++++++++++++-
 src/cpu_map/x86_Broadwell-IBRS.xml            |  75 ++++++++++++
 src/cpu_map/x86_Broadwell-noTSX-IBRS.xml      |  75 ++++++++++++
 src/cpu_map/x86_Broadwell-noTSX.xml           |  75 ++++++++++++
 src/cpu_map/x86_Broadwell.xml                 |  75 ++++++++++++
 src/cpu_map/x86_Cascadelake-Server-noTSX.xml  |  76 ++++++++++++
 src/cpu_map/x86_Cascadelake-Server.xml        |  74 ++++++++++++
 src/cpu_map/x86_Conroe.xml                    |  26 ++++
 src/cpu_map/x86_Cooperlake.xml                |  76 ++++++++++++
 src/cpu_map/x86_Haswell-IBRS.xml              |  73 +++++++++++
 src/cpu_map/x86_Haswell-noTSX-IBRS.xml        |  73 +++++++++++
 src/cpu_map/x86_Haswell-noTSX.xml             |  73 +++++++++++
 src/cpu_map/x86_Haswell.xml                   |  73 +++++++++++
 src/cpu_map/x86_Icelake-Server-noTSX.xml      |  77 ++++++++++++
 src/cpu_map/x86_Icelake-Server.xml            |  72 +++++++++++
 src/cpu_map/x86_IvyBridge-IBRS.xml            |  67 ++++++++++
 src/cpu_map/x86_IvyBridge.xml                 |  67 ++++++++++
 src/cpu_map/x86_Nehalem-IBRS.xml              |  61 ++++++++++
 src/cpu_map/x86_Nehalem.xml                   |  61 ++++++++++
 src/cpu_map/x86_Penryn.xml                    |  29 +++++
 src/cpu_map/x86_SandyBridge-IBRS.xml          |  63 ++++++++++
 src/cpu_map/x86_SandyBridge.xml               |  63 ++++++++++
 src/cpu_map/x86_SapphireRapids.xml            |  77 ++++++++++++
 src/cpu_map/x86_Skylake-Client-IBRS.xml       |  71 +++++++++++
 src/cpu_map/x86_Skylake-Client-noTSX-IBRS.xml |  72 +++++++++++
 src/cpu_map/x86_Skylake-Client.xml            |  71 +++++++++++
 src/cpu_map/x86_Skylake-Server-IBRS.xml       |  74 ++++++++++++
 src/cpu_map/x86_Skylake-Server-noTSX-IBRS.xml |  76 ++++++++++++
 src/cpu_map/x86_Skylake-Server.xml            |  74 ++++++++++++
 src/cpu_map/x86_Snowridge.xml                 |  76 ++++++++++++
 src/cpu_map/x86_Westmere-IBRS.xml             |  63 ++++++++++
 src/cpu_map/x86_Westmere.xml                  |  63 ++++++++++
 src/cpu_map/x86_core2duo.xml                  |  26 ++++
 src/cpu_map/x86_coreduo.xml                   |  18 +++
 src/cpu_map/x86_kvm32.xml                     |  18 +++
 src/cpu_map/x86_kvm64.xml                     |  20 +++
 src/libvirt_private.syms                      |   2 +
 src/qemu/qemu_domain.c                        |  60 ++++++++-
 src/qemu/qemu_domain.h                        |   4 +-
 src/qemu/qemu_migration_cookie.c              |   5 +-
 45 files changed, 2487 insertions(+), 12 deletions(-)

-- 
2.44.0
_______________________________________________
Devel mailing list -- devel@xxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxx




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux