[RFC PATCH v2 0/2] Virtio-GPU suspend and resume

Dmitry Osipenko dmitry.osipenko at collabora.com
Sat Jun 14 22:26:25 UTC 2025


Hi,

On 5/24/25 01:00, dongwon.kim at intel.com wrote:
> From: Dongwon Kim <dongwon.kim at intel.com>
> 
> This patch series introduces a freeze and restore mechanism for
> the virtio-gpu driver:
> 
> First patch adds `virtgpu_freeze` and `virtgpu_restore` functions.
> These functions handle the deletion of virtio queues before suspension and
> their recreation during the restoration process.
> 
> Second patch implements a mechanism for restoring `virtio_gpu_object` instances.
> This is necessary because the host (QEMU) deletes all associated resources during
> the virtio-gpu reset, which occurs as part of the restoration process.
> 
> These changes ensure that the virtio-gpu driver can properly handle suspend and
> resume scenarios without resource loss.
> 
> Dongwon Kim (2):
>   drm/virtio: Freeze and restore hooks to support suspend and resume
>   drm/virtio: Implement save and restore for virtio_gpu_objects
> 
>  drivers/gpu/drm/virtio/virtgpu_drv.c    | 65 +++++++++++++++++++++-
>  drivers/gpu/drm/virtio/virtgpu_drv.h    | 11 ++++
>  drivers/gpu/drm/virtio/virtgpu_kms.c    | 24 ++++++---
>  drivers/gpu/drm/virtio/virtgpu_object.c | 72 +++++++++++++++++++++++++
>  4 files changed, 165 insertions(+), 7 deletions(-)

Tested the patches, applied to v6.15.2. Suspend-resume works with v2,
display works on resume.

Have you figured out why 10ms workaround is needed?

-- 
Best regards,
Dmitry


More information about the dri-devel mailing list