On Sat, Jul 25, 2026 at 11:17 AM Akihiko Odaki
<[email protected]> wrote:
>
> The migration stream encoding is not defined for Rutabaga yet.
>
> Fixes: 1dcc6adbc168 ("gfxstream + rutabaga: add initial support for 
> gfxstream")
> Signed-off-by: Akihiko Odaki <[email protected]>

Reviewed-by: Marc-André Lureau <[email protected]>

> ---
>  hw/display/virtio-gpu-rutabaga.c | 17 +++++++++++++++--
>  1 file changed, 15 insertions(+), 2 deletions(-)
>
> diff --git a/hw/display/virtio-gpu-rutabaga.c 
> b/hw/display/virtio-gpu-rutabaga.c
> index 4d7d7b245929..ad5cfabf4ee9 100644
> --- a/hw/display/virtio-gpu-rutabaga.c
> +++ b/hw/display/virtio-gpu-rutabaga.c
> @@ -9,6 +9,7 @@
>  #include "hw/virtio/virtio-gpu.h"
>  #include "hw/virtio/virtio-gpu-pixman.h"
>  #include "hw/virtio/virtio-iommu.h"
> +#include "migration/blocker.h"
>
>  #include <glib/gmem.h>
>  #include <rutabaga_gfx/rutabaga_gfx_ffi.h>
> @@ -1078,6 +1079,7 @@ static void 
> virtio_gpu_rutabaga_handle_ctrl(VirtIODevice *vdev, VirtQueue *vq)
>
>  static void virtio_gpu_rutabaga_realize(DeviceState *qdev, Error **errp)
>  {
> +    ERRP_GUARD();
>      uint32_t num_capsets;
>      VirtIOGPUBase *bdev = VIRTIO_GPU_BASE(qdev);
>      VirtIOGPU *gpudev = VIRTIO_GPU(qdev);
> @@ -1087,12 +1089,17 @@ static void virtio_gpu_rutabaga_realize(DeviceState 
> *qdev, Error **errp)
>      return;
>  #endif
>
> -    if (!virtio_gpu_rutabaga_init(gpudev, errp)) {
> +    error_setg(&bdev->migration_blocker, "rutabaga is not yet migratable");
> +    if (migrate_add_blocker(&bdev->migration_blocker, errp) < 0) {
>          return;
>      }
>
> +    if (!virtio_gpu_rutabaga_init(gpudev, errp)) {
> +        goto fail;
> +    }
> +
>      if (!virtio_gpu_rutabaga_get_num_capsets(gpudev, &num_capsets, errp)) {
> -        return;
> +        goto fail;
>      }
>
>      bdev->conf.flags |= (1 << VIRTIO_GPU_FLAG_RUTABAGA_ENABLED);
> @@ -1101,6 +1108,12 @@ static void virtio_gpu_rutabaga_realize(DeviceState 
> *qdev, Error **errp)
>
>      bdev->virtio_config.num_capsets = num_capsets;
>      virtio_gpu_device_realize(qdev, errp);
> +    if (!*errp) {
> +        return;
> +    }
> +
> +fail:
> +    migrate_del_blocker(&bdev->migration_blocker);
>  }
>
>  static const Property virtio_gpu_rutabaga_properties[] = {
>
> ---
> base-commit: 006a22cb26998998385b104db1ff9466ef2f3153
> change-id: 20260725-rutabaga-090ad4172817
>
> Best regards,
> --
> Akihiko Odaki <[email protected]>
>
>


-- 
Marc-André Lureau

Reply via email to