From: Dongwon Kim Date: Sun, 20 Oct 2024 23:08:02 +0000 (+0300) Subject: drm/virtio: Use drm_gem_plane_helper_prepare_fb() X-Git-Tag: v6.14-rc1~174^2~18^2~101 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=30f86b8f86ada845fbd0d853b3a3d238567ac2c2;p=thirdparty%2Fkernel%2Flinux.git drm/virtio: Use drm_gem_plane_helper_prepare_fb() Use drm_gem_plane_helper_prepare_fb() helper for explicit framebuffer synchronization. We need to wait for explicit fences in a case of Venus and native contexts when guest user space uses explicit fencing. Signed-off-by: Dongwon Kim [dmitry.osipenko@collabora.com: edit commit message] Signed-off-by: Dmitry Osipenko Acked-by: Vivek Kasireddy Reviewed-by: Rob Clark Link: https://patchwork.freedesktop.org/patch/msgid/20241020230803.247419-1-dmitry.osipenko@collabora.com --- diff --git a/drivers/gpu/drm/virtio/virtgpu_plane.c b/drivers/gpu/drm/virtio/virtgpu_plane.c index a72a2dbda031c..ab7232921cb7d 100644 --- a/drivers/gpu/drm/virtio/virtgpu_plane.c +++ b/drivers/gpu/drm/virtio/virtgpu_plane.c @@ -26,6 +26,7 @@ #include #include #include +#include #include "virtgpu_drv.h" @@ -254,6 +255,9 @@ static int virtio_gpu_plane_prepare_fb(struct drm_plane *plane, vgfb = to_virtio_gpu_framebuffer(new_state->fb); bo = gem_to_virtio_gpu_obj(vgfb->base.obj[0]); + + drm_gem_plane_helper_prepare_fb(plane, new_state); + if (!bo || (plane->type == DRM_PLANE_TYPE_PRIMARY && !bo->guest_blob)) return 0;