OSDN Git Service

[media] soc_camera: pass on streamoff error
authorHans Verkuil <hans.verkuil@cisco.com>
Mon, 15 Jun 2015 11:33:39 +0000 (08:33 -0300)
committerMauro Carvalho Chehab <mchehab@osg.samsung.com>
Tue, 11 Aug 2015 12:53:11 +0000 (09:53 -0300)
If streamoff returned an error, then pass that on to the caller.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
drivers/media/platform/soc_camera/soc_camera.c

index 6ce6576..0b09281 100644 (file)
@@ -1000,6 +1000,7 @@ static int soc_camera_streamoff(struct file *file, void *priv,
        struct soc_camera_device *icd = file->private_data;
        struct v4l2_subdev *sd = soc_camera_to_subdev(icd);
        struct soc_camera_host *ici = to_soc_camera_host(icd->parent);
+       int ret;
 
        WARN_ON(priv != file->private_data);
 
@@ -1014,13 +1015,13 @@ static int soc_camera_streamoff(struct file *file, void *priv,
         * remaining buffers. When the last buffer is freed, stop capture
         */
        if (ici->ops->init_videobuf)
-               videobuf_streamoff(&icd->vb_vidq);
+               ret = videobuf_streamoff(&icd->vb_vidq);
        else
-               vb2_streamoff(&icd->vb2_vidq, i);
+               ret = vb2_streamoff(&icd->vb2_vidq, i);
 
        v4l2_subdev_call(sd, video, s_stream, 0);
 
-       return 0;
+       return ret;
 }
 
 static int soc_camera_cropcap(struct file *file, void *fh,