Re: [PATCH next] drm/v3d: Fix missing error code in v3d_submit_cpu_ioctl()

From: Melissa Wen
Date: Mon Dec 04 2023 - 09:51:40 EST


On 12/04, Harshit Mogalapalli wrote:
> Smatch warns:
> drivers/gpu/drm/v3d/v3d_submit.c:1222 v3d_submit_cpu_ioctl()
> warn: missing error code 'ret'
>
> When there is no job type or job is submitted with wrong number of BOs
> it is an error path, ret is zero at this point which is incorrect
> return.
>
> Fix this by changing it to -EINVAL.
>
> Fixes: aafc1a2bea67 ("drm/v3d: Add a CPU job submission")
> Signed-off-by: Harshit Mogalapalli <harshit.m.mogalapalli@xxxxxxxxxx>
> ---
> This is based on static analysis and only compile tested.
> ---
> drivers/gpu/drm/v3d/v3d_submit.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/v3d/v3d_submit.c b/drivers/gpu/drm/v3d/v3d_submit.c
> index d7a9da2484fd..fcff41dd2315 100644
> --- a/drivers/gpu/drm/v3d/v3d_submit.c
> +++ b/drivers/gpu/drm/v3d/v3d_submit.c
> @@ -1219,11 +1219,13 @@ v3d_submit_cpu_ioctl(struct drm_device *dev, void *data,
> /* Every CPU job must have a CPU job user extension */
> if (!cpu_job->job_type) {
> DRM_DEBUG("CPU job must have a CPU job user extension.\n");
> + ret = -EINVAL;
> goto fail;
> }
>
> if (args->bo_handle_count != cpu_job_bo_handle_count[cpu_job->job_type]) {
> DRM_DEBUG("This CPU job was not submitted with the proper number of BOs.\n");
> + ret = -EINVAL;

Nice catch. Thanks!

Reviewed-by: Melissa Wen <mwen@xxxxxxxxxx>

I'll apply to drm-misc-next.

> goto fail;
> }
>
> --
> 2.39.3
>