mbox series

[0/2] virtio-gpu: fix blob scanout post-load

Message ID 20240115154830.498304-1-marcandre.lureau@redhat.com (mailing list archive)
Headers show
Series virtio-gpu: fix blob scanout post-load | expand

Message

Marc-André Lureau Jan. 15, 2024, 3:48 p.m. UTC
From: Marc-André Lureau <marcandre.lureau@redhat.com>

Hi,

The current post-loading code for scanout has a FIXME: it doesn't take the
resource region/rect into account. But there is more, when adding blob migration
support in commit f66767f75c9, I didn't realize that blob resources could be
used for scanouts. This situationn leads to a crash during post-load, as they
don't have an associated res->image.

virtio_gpu_do_set_scanout() handle all cases, but requires the associated
virtio_gpu_framebuffer, which is currently not saved during migration.

Add a v2 of "virtio-gpu-one-scanout" with the framebuffer fields, so we can
restore blob scanouts, as well as fixing the existing FIXME.

Marc-André Lureau (2):
  virtio-gpu: remove needless condition
  virtio-gpu: fix scanout migration post-load

 include/hw/virtio/virtio-gpu.h |  1 +
 hw/display/virtio-gpu.c        | 61 ++++++++++++++++++++++++----------
 2 files changed, 45 insertions(+), 17 deletions(-)