]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
drm/v3d: Reject invalid indirect BO handle in indirect CSD setup
authorMaíra Canal <mcanal@igalia.com>
Fri, 3 Jul 2026 15:33:35 +0000 (12:33 -0300)
committerMaíra Canal <mcanal@igalia.com>
Tue, 7 Jul 2026 21:52:13 +0000 (18:52 -0300)
commit2f8b8593c7832fad655290cef9e99af05b1b52b3
tree83831362922a91dee00851e60b583bc1886fcf83
parent928caf71e566ddc5f303f15fb9c33f16a9915f30
drm/v3d: Reject invalid indirect BO handle in indirect CSD setup

v3d_get_cpu_indirect_csd_params() looks up the indirect buffer object
from a userspace-supplied handle but never checks the result. A bogus
or stale handle makes drm_gem_object_lookup() return NULL, which is
then stored in info->indirect and only dereferenced later when the
indirect CSD job runs, turning a userspace mistake into a NULL pointer
dereference in the kernel.

Bail out with -ENOENT as soon as the lookup fails, so the bad handle is
rejected at submission time.

Fixes: 18b8413b25b7 ("drm/v3d: Create a CPU job extension for a indirect CSD job")
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Signed-off-by: Maíra Canal <mcanal@igalia.com>
Link: https://patch.msgid.link/20260703-v3d-cpu-job-fixes-v3-2-bc51b1f3eeb5@igalia.com
drivers/gpu/drm/v3d/v3d_submit.c