Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/qxl: add drm_gem_plane_helper_prepare_fb

We could need to wait for the pin to complete here.

Signed-off-by: Christian König <christian.koenig@amd.com>
Cc: Dave Airlie <airlied@redhat.com>
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: virtualization@lists.linux-foundation.org
Cc: spice-devel@lists.freedesktop.org
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20220429134230.24334-4-christian.koenig@amd.com

+7 -1
+7 -1
drivers/gpu/drm/qxl/qxl_display.c
··· 34 34 #include <drm/drm_plane_helper.h> 35 35 #include <drm/drm_probe_helper.h> 36 36 #include <drm/drm_simple_kms_helper.h> 37 + #include <drm/drm_gem_atomic_helper.h> 37 38 38 39 #include "qxl_drv.h" 39 40 #include "qxl_object.h" ··· 830 829 struct qxl_device *qdev = to_qxl(plane->dev); 831 830 struct drm_gem_object *obj; 832 831 struct qxl_bo *user_bo; 832 + int ret; 833 833 834 834 if (!new_state->fb) 835 835 return 0; ··· 854 852 qxl_free_cursor(old_cursor_bo); 855 853 } 856 854 857 - return qxl_bo_pin(user_bo); 855 + ret = qxl_bo_pin(user_bo); 856 + if (ret) 857 + return ret; 858 + 859 + return drm_gem_plane_helper_prepare_fb(plane, new_state); 858 860 } 859 861 860 862 static void qxl_plane_cleanup_fb(struct drm_plane *plane,