El jue, 23-11-2023 a las 21:47 -0300, Maíra Canal escribió: > From: Melissa Wen <mwen@xxxxxxxxxx> > > 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@xxxxxxxxxx> > Signed-off-by: Maíra Canal <mcanal@xxxxxxxxxx> > --- > drivers/gpu/drm/v3d/v3d_submit.c | 15 ++++++++------- > 1 file changed, 8 insertions(+), 7 deletions(-) > > diff --git a/drivers/gpu/drm/v3d/v3d_submit.c > b/drivers/gpu/drm/v3d/v3d_submit.c > index f36214002f37..e18e7c963884 100644 > --- a/drivers/gpu/drm/v3d/v3d_submit.c > +++ b/drivers/gpu/drm/v3d/v3d_submit.c > @@ -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(&render->base); > - if (clean_job) > - v3d_job_put(clean_job); > + v3d_job_put((void *)bin); > + v3d_job_put((void *)render); > + v3d_job_put((void *)clean_job); Personally, I am not a big fan of casting to void* instead of using &job->base for all the v3d_job_put calls in this patch. Iago > > return 0; > > @@ -621,7 +622,7 @@ v3d_submit_tfu_ioctl(struct drm_device *dev, void > *data, > &se, > job- > >base.done_fence); > > - v3d_job_put(&job->base); > + v3d_job_put((void *)job); > > return 0; > > @@ -725,7 +726,7 @@ v3d_submit_csd_ioctl(struct drm_device *dev, void > *data, > &se, > clean_job- > >done_fence); > > - v3d_job_put(&job->base); > + v3d_job_put((void *)job); > v3d_job_put(clean_job); > > return 0;