media: platform: sunxi: sun6i-csi: fix error return code of sun6i_video_start_streaming()
authorJia-Ju Bai <baijiaju1990@gmail.com>
Sat, 6 Mar 2021 14:15:28 +0000 (15:15 +0100)
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Mon, 22 Mar 2021 09:20:35 +0000 (10:20 +0100)
When sun6i_video_remote_subdev() returns NULL to subdev, no error return
code of sun6i_video_start_streaming() is assigned.
To fix this bug, ret is assigned with -EINVAL in this case.

Reported-by: TOTE Robot <oslab@tsinghua.edu.cn>
Signed-off-by: Jia-Ju Bai <baijiaju1990@gmail.com>
Fixes: 5cc7522d8965 ("media: sun6i: Add support for Allwinner CSI V3s")
Acked-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
drivers/media/platform/sunxi/sun6i-csi/sun6i_video.c

index b55de9ab64d8b3f3c83452d1db2a8b33d939c0b4..3181d0781b613bc44f3c21828da6e73c56c61edc 100644 (file)
@@ -151,8 +151,10 @@ static int sun6i_video_start_streaming(struct vb2_queue *vq, unsigned int count)
        }
 
        subdev = sun6i_video_remote_subdev(video, NULL);
-       if (!subdev)
+       if (!subdev) {
+               ret = -EINVAL;
                goto stop_media_pipeline;
+       }
 
        config.pixelformat = video->fmt.fmt.pix.pixelformat;
        config.code = video->mbus_code;