]> git.baikalelectronics.ru Git - kernel.git/commit
drm: Return error codes from struct drm_driver.gem_create_object
authorThomas Zimmermann <tzimmermann@suse.de>
Tue, 30 Nov 2021 09:52:55 +0000 (10:52 +0100)
committerThomas Zimmermann <tzimmermann@suse.de>
Thu, 2 Dec 2021 10:12:39 +0000 (11:12 +0100)
commit53edf690348c91b57b279a4c9977b42574268080
tree02fd49b249e5a1e9d4242caa88668d91fdf65d72
parentd4b46388b3a66b59a5b80ae4f5978612d997d6b3
drm: Return error codes from struct drm_driver.gem_create_object

GEM helper libraries use struct drm_driver.gem_create_object to let
drivers override GEM object allocation. On failure, the call returns
NULL.

Change the semantics to make the calls return a pointer-encoded error.
This aligns the callback with its callers. Fixes the ingenic driver,
which already returns an error pointer.

Also update the callers to handle the involved types more strictly.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Steven Price <steven.price@arm.com>
Acked-by: Maxime Ripard <maxime@cerno.tech>
Link: https://patchwork.freedesktop.org/patch/msgid/20211130095255.26710-1-tzimmermann@suse.de
drivers/gpu/drm/drm_gem_cma_helper.c
drivers/gpu/drm/drm_gem_shmem_helper.c
drivers/gpu/drm/drm_gem_vram_helper.c
drivers/gpu/drm/lima/lima_gem.c
drivers/gpu/drm/panfrost/panfrost_gem.c
drivers/gpu/drm/v3d/v3d_bo.c
drivers/gpu/drm/vgem/vgem_drv.c
drivers/gpu/drm/virtio/virtgpu_object.c
include/drm/drm_drv.h