drm/v3d: Simplify job refcount handling
authorMelissa Wen <mwen@igalia.com>
Thu, 30 Nov 2023 16:40:27 +0000 (13:40 -0300)
committerMaíra Canal <mcanal@igalia.com>
Fri, 1 Dec 2023 12:34:08 +0000 (09:34 -0300)
Instead of checking if the job is NULL every time we call the function,
check it inside the function.

Signed-off-by: Melissa Wen <mwen@igalia.com>
Signed-off-by: Maíra Canal <mcanal@igalia.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20231130164420.932823-6-mcanal@igalia.com
drivers/gpu/drm/v3d/v3d_submit.c

index f36214002f37cf877848c8c27e1516cbfbdb7def..a0caf9c499bbb336fb56471dc13a180c2ffc39b0 100644 (file)
@@ -129,6 +129,9 @@ void v3d_job_cleanup(struct v3d_job *job)
 
 void v3d_job_put(struct v3d_job *job)
 {
+       if (!job)
+               return;
+
        kref_put(&job->refcount, job->free);
 }
 
@@ -517,11 +520,9 @@ v3d_submit_cl_ioctl(struct drm_device *dev, void *data,
                                                 &se,
                                                 last_job->done_fence);
 
-       if (bin)
-               v3d_job_put(&bin->base);
+       v3d_job_put(&bin->base);
        v3d_job_put(&render->base);
-       if (clean_job)
-               v3d_job_put(clean_job);
+       v3d_job_put(clean_job);
 
        return 0;