On 10/27/25 23:53, [email protected] wrote:
> diff --git a/drivers/gpu/drm/virtio/virtgpu_drv.c 
> b/drivers/gpu/drm/virtio/virtgpu_drv.c
> index 676893e90a9f..5ff79e3775e8 100644
> --- a/drivers/gpu/drm/virtio/virtgpu_drv.c
> +++ b/drivers/gpu/drm/virtio/virtgpu_drv.c
> @@ -207,6 +207,15 @@ static int virtgpu_restore(struct virtio_device *vdev)
>  
>       virtio_device_ready(vdev);
>  
> +     if (vgdev->hibernation) {
> +             vgdev->hibernation = false;
> +             error = virtio_gpu_object_restore_all(vgdev);
> +             if (error) {
> +                     DRM_ERROR("Failed to recover virtio-gpu objects\n");
> +                     return error;
> +             }
> +     }

What if hibernation was aborted and didn't happen? In that case
restoring of objects will fail. Please investigate how to handle aborted
hibernation properly.

-- 
Best regards,
Dmitry

Reply via email to