Message ID | 20240516084022.1398919-1-marcandre.lureau@redhat.com (mailing list archive) |
---|---|
Headers | show |
Series | Fix "virtio-gpu: fix scanout migration post-load" | expand |
Am 16.05.24 um 10:40 schrieb marcandre.lureau@redhat.com: > From: Marc-André Lureau <marcandre.lureau@redhat.com> > > 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 > > v4: > - drop machine_check_version() approach > - property renamed to x-scanout-vmstate-version > > Marc-André Lureau (3): > migration: add "exists" info to load-state-field trace > migration: fix a typo > virtio-gpu: fix v2 migration > > include/hw/virtio/virtio-gpu.h | 1 + > hw/core/machine.c | 1 + > hw/display/virtio-gpu.c | 24 ++++++++++++++++-------- > migration/vmstate.c | 7 ++++--- > migration/trace-events | 2 +- > 5 files changed, 23 insertions(+), 12 deletions(-) > Reviewed-by: Fiona Ebner <f.ebner@proxmox.com> Tested-by: Fiona Ebner <f.ebner@proxmox.com> Tested the same things as for v1/v2, with an Ubuntu 23.10 VM: Machine type pc-i440fx-8.2: 1. create snapshot with 8.2, load with patched 9.0 2. create snapshot with patched 9.0, load with patched 9.0 and with 8.2 Machine type pc-i440fx-9.0: 1. create snapshot with patched 9.0, load with patched 9.0 No crashes/failures and didn't notice any other issues
Looks good here, thanks. On Thu, May 16, 2024, 2:40 a.m. <marcandre.lureau@redhat.com> wrote: > From: Marc-André Lureau <marcandre.lureau@redhat.com> > > 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 > > v4: > - drop machine_check_version() approach > - property renamed to x-scanout-vmstate-version > > Marc-André Lureau (3): > migration: add "exists" info to load-state-field trace > migration: fix a typo > virtio-gpu: fix v2 migration > > include/hw/virtio/virtio-gpu.h | 1 + > hw/core/machine.c | 1 + > hw/display/virtio-gpu.c | 24 ++++++++++++++++-------- > migration/vmstate.c | 7 ++++--- > migration/trace-events | 2 +- > 5 files changed, 23 insertions(+), 12 deletions(-) > > -- > 2.41.0.28.gd7d8841f67 > >
On Thu, 16 May 2024 12:40:19 +0400, marcandre.lureau@redhat.com wrote: > 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) > > [...] Queued, thanks!
From: Marc-André Lureau <marcandre.lureau@redhat.com> 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 v4: - drop machine_check_version() approach - property renamed to x-scanout-vmstate-version Marc-André Lureau (3): migration: add "exists" info to load-state-field trace migration: fix a typo virtio-gpu: fix v2 migration include/hw/virtio/virtio-gpu.h | 1 + hw/core/machine.c | 1 + hw/display/virtio-gpu.c | 24 ++++++++++++++++-------- migration/vmstate.c | 7 ++++--- migration/trace-events | 2 +- 5 files changed, 23 insertions(+), 12 deletions(-)