From: Marc-André Lureau <[email protected]>
Hi,
The aforementioned patch breaks virtio-gpu device migrations for versions
pre-9.0/9.0, both forwards and backwards. Versioning of `VMS_STRUCT` is more
complex than it may initially appear, as evidenced in the problematic commit
dfcf74fa68c ("virtio-gpu: fix scanout migration post-load").
v2:
- use a manual version field test (instead of the more complex struct variant)
v3:
- introduce machine_check_version()
- drop the VMSD version, and use machine version field test
Marc-André Lureau (5):
migration: add "exists" info to load-state-field trace
migration: fix a typo
hw/boards: add machine_check_version()
Set major/minor for PC and arm machines
virtio-gpu: fix v2 migration
include/hw/boards.h | 14 ++++++++
include/hw/i386/pc.h | 4 ++-
hw/arm/virt.c | 2 ++
hw/display/virtio-gpu.c | 21 +++++++-----
hw/i386/pc_piix.c | 74 ++++++++++++++++++++---------------------
hw/i386/pc_q35.c | 62 +++++++++++++++++-----------------
migration/vmstate.c | 7 ++--
migration/trace-events | 2 +-
8 files changed, 105 insertions(+), 81 deletions(-)
--
2.41.0.28.gd7d8841f67