qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/4] Fix "virtio-gpu: fix scanout migration post-load"
@ 2024-05-07 11:19 marcandre.lureau
  2024-05-07 11:19 ` [PATCH 1/4] migration: add "exists" info to load-state-field trace marcandre.lureau
                   ` (5 more replies)
  0 siblings, 6 replies; 16+ messages in thread
From: marcandre.lureau @ 2024-05-07 11:19 UTC (permalink / raw)
  To: qemu-devel
  Cc: Richard Henderson, Sebastian Ott, Fabiano Rosas, Eduardo Habkost,
	Fiona Ebner, Gerd Hoffmann, Peter Xu, Philippe Mathieu-Daudé,
	Marcel Apfelbaum, peter.maydell, Michael S. Tsirkin, Yanan Wang,
	=?unknown-8bit?q?Marc-Andr=C3=A9?= Lureau

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").

To resolve this, we need to propagate the `vmstate` `version_id` through the
nested structures. Additionally, we should tie specific machine version to a
corresponding `version_id` to maintain migration compatibility.

`VMS_VSTRUCT` allows specifying the appropriate version of the nested structure
to use.

Marc-André Lureau (4):
  migration: add "exists" info to load-state-field trace
  include/migration: add VMSTATE_VSTRUCT_TEST_VARRAY_UINT32
  virtio-gpu: use a VMState variant for the scanout field
  virtio-gpu: add x-vmstate-version

 include/hw/virtio/virtio-gpu.h |  1 +
 include/migration/vmstate.h    | 12 ++++++++++++
 hw/core/machine.c              |  1 +
 hw/display/virtio-gpu.c        | 28 +++++++++++++++++++++-------
 migration/vmstate.c            |  5 +++--
 migration/trace-events         |  2 +-
 6 files changed, 39 insertions(+), 10 deletions(-)

-- 
2.41.0.28.gd7d8841f67



^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2024-05-11  6:45 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-05-07 11:19 [PATCH 0/4] Fix "virtio-gpu: fix scanout migration post-load" marcandre.lureau
2024-05-07 11:19 ` [PATCH 1/4] migration: add "exists" info to load-state-field trace marcandre.lureau
2024-05-07 15:29   ` Peter Xu
2024-05-07 11:19 ` [PATCH 2/4] include/migration: add VMSTATE_VSTRUCT_TEST_VARRAY_UINT32 marcandre.lureau
2024-05-07 11:19 ` [PATCH 3/4] virtio-gpu: use a VMState variant for the scanout field marcandre.lureau
2024-05-07 19:59   ` Peter Xu
2024-05-10  8:39     ` Marc-André Lureau
2024-05-10 17:33       ` Peter Xu
2024-05-11  6:44         ` Marc-André Lureau
2024-05-10 10:25   ` Michael S. Tsirkin
2024-05-10 11:57     ` Marc-André Lureau
2024-05-07 11:19 ` [PATCH 4/4] virtio-gpu: add x-vmstate-version marcandre.lureau
2024-05-07 20:51   ` Fabiano Rosas
2024-05-07 20:46 ` [PATCH 0/4] Fix "virtio-gpu: fix scanout migration post-load" Fabiano Rosas
2024-05-07 21:24   ` Peter Xu
2024-05-08  9:51 ` Fiona Ebner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).