On Sat, Jul 25, 2026 at 11:13 AM Akihiko Odaki <[email protected]> wrote: > > Discriminating blobs by checking whether blob_size is nonzero fails for > empty blobs. Identify 2D resources by their non-NULL image instead. > > Fixes: bdd53f739273 ("virtio-gpu: Update cursor data using blob") > Fixes: f66767f75c9c ("virtio-gpu: add virtio-gpu/blob vmstate subsection") > Signed-off-by: Akihiko Odaki <[email protected]>
Reviewed-by: Marc-André Lureau <[email protected]> > --- > hw/display/virtio-gpu.c | 18 +++++++++--------- > 1 file changed, 9 insertions(+), 9 deletions(-) > > diff --git a/hw/display/virtio-gpu.c b/hw/display/virtio-gpu.c > index 718ba3039290..6413df029b8e 100644 > --- a/hw/display/virtio-gpu.c > +++ b/hw/display/virtio-gpu.c > @@ -56,18 +56,18 @@ void virtio_gpu_update_cursor_data(VirtIOGPU *g, > return; > } > > - if (res->blob_size) { > - if (res->blob_size < (s->current_cursor->width * > - s->current_cursor->height * 4)) { > - return; > - } > - data = res->blob; > - } else { > + if (res->image) { > if (pixman_image_get_width(res->image) != s->current_cursor->width > || > pixman_image_get_height(res->image) != > s->current_cursor->height) { > return; > } > data = pixman_image_get_data(res->image); > + } else { > + if (res->blob_size < (s->current_cursor->width * > + s->current_cursor->height * 4)) { > + return; > + } > + data = res->blob; > } > > pixels = s->current_cursor->width * s->current_cursor->height; > @@ -1279,7 +1279,7 @@ static int virtio_gpu_save(QEMUFile *f, void *opaque, > size_t size, > assert(QTAILQ_EMPTY(&g->cmdq)); > > QTAILQ_FOREACH(res, &g->reslist, next) { > - if (res->blob_size) { > + if (!res->image) { > continue; > } > qemu_put_be32(f, res->resource_id); > @@ -1430,7 +1430,7 @@ static int virtio_gpu_blob_save(QEMUFile *f, void > *opaque, size_t size, > assert(QTAILQ_EMPTY(&g->cmdq)); > > QTAILQ_FOREACH(res, &g->reslist, next) { > - if (!res->blob_size) { > + if (res->image) { > continue; > } > assert(!res->image); > > --- > base-commit: 006a22cb26998998385b104db1ff9466ef2f3153 > change-id: 20260725-image-6c8566fb1253 > > Best regards, > -- > Akihiko Odaki <[email protected]> > > -- Marc-André Lureau
