drm/msm/gpu: Don't allow zero fence_id
authorRob Clark <robdclark@chromium.org>
Mon, 29 Nov 2021 18:23:44 +0000 (10:23 -0800)
committerRob Clark <robdclark@chromium.org>
Tue, 7 Dec 2021 22:34:18 +0000 (14:34 -0800)
Elsewhere we treat zero as "no fence" and __msm_gem_submit_destroy()
skips removal from fence_idr.  We could alternately change this to use
negative values for "no fence" but I think it is more clear to not allow
zero as a valid fence_id.

Signed-off-by: Rob Clark <robdclark@chromium.org>
Fixes: a61acbbe9cf8 ("drm/msm: Track "seqno" fences by idr")
Link: https://lore.kernel.org/r/20211129182344.292609-1-robdclark@gmail.com
Signed-off-by: Rob Clark <robdclark@chromium.org>
drivers/gpu/drm/msm/msm_gem_submit.c

index 282628d..6cfa984 100644 (file)
@@ -881,7 +881,7 @@ int msm_ioctl_gem_submit(struct drm_device *dev, void *data,
         * to the underlying fence.
         */
        submit->fence_id = idr_alloc_cyclic(&queue->fence_idr,
-                       submit->user_fence, 0, INT_MAX, GFP_KERNEL);
+                       submit->user_fence, 1, INT_MAX, GFP_KERNEL);
        if (submit->fence_id < 0) {
                ret = submit->fence_id = 0;
                submit->fence_id = 0;