summary refs log tree commit diff
diff options
context:
space:
mode:
authorRob Clark <robdclark@chromium.org>2023-07-24 13:30:21 -0700
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-08-03 10:24:06 +0200
commita39bf13f86403c0e9d9830a5ea30be420c6504b5 (patch)
treebbb0d8a2a7f935ec3eefb78e9add8076060ce516
parent3398e8b2833f3fdf526c3a4fdd149924704b4c40 (diff)
downloadlinux-a39bf13f86403c0e9d9830a5ea30be420c6504b5.tar.gz
drm/msm: Disallow submit with fence id 0
[ Upstream commit 1b5d0ddcb34a605835051ae2950d5cfed0373dd8 ]

A fence id of zero is expected to be invalid, and is not removed from
the fence_idr table.  If userspace is requesting to specify the fence
id with the FENCE_SN_IN flag, we need to reject a zero fence id value.

Fixes: 17154addc5c1 ("drm/msm: Add MSM_SUBMIT_FENCE_SN_IN")
Signed-off-by: Rob Clark <robdclark@chromium.org>
Patchwork: https://patchwork.freedesktop.org/patch/549180/
Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/gpu/drm/msm/msm_gem_submit.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/drm/msm/msm_gem_submit.c b/drivers/gpu/drm/msm/msm_gem_submit.c
index 5668860f0182..c12a6ac2d384 100644
--- a/drivers/gpu/drm/msm/msm_gem_submit.c
+++ b/drivers/gpu/drm/msm/msm_gem_submit.c
@@ -875,7 +875,7 @@ int msm_ioctl_gem_submit(struct drm_device *dev, void *data,
 	 * after the job is armed
 	 */
 	if ((args->flags & MSM_SUBMIT_FENCE_SN_IN) &&
-			idr_find(&queue->fence_idr, args->fence)) {
+			(!args->fence || idr_find(&queue->fence_idr, args->fence))) {
 		spin_unlock(&queue->idr_lock);
 		ret = -EINVAL;
 		goto out;