media: go7007: don't modify q->streaming
authorHans Verkuil <hverkuil-cisco@xs4all.nl>
Thu, 8 Dec 2022 07:52:06 +0000 (08:52 +0100)
committerMauro Carvalho Chehab <mchehab@kernel.org>
Mon, 6 Feb 2023 08:01:05 +0000 (09:01 +0100)
The streaming state is maintained by the vb2 core, so drivers
must never change it themselves.

Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
drivers/media/usb/go7007/go7007-v4l2.c

index b2edc4deaca345779e29ca2e1f1d02af09c9cd8d..13256565b034308bc6366f1824cbb9f2d145c607 100644 (file)
@@ -404,16 +404,13 @@ static int go7007_start_streaming(struct vb2_queue *q, unsigned int count)
        go->next_seq = 0;
        go->active_buf = NULL;
        go->modet_event_status = 0;
-       q->streaming = 1;
        if (go7007_start_encoder(go) < 0)
                ret = -EIO;
        else
                ret = 0;
        mutex_unlock(&go->hw_lock);
-       if (ret) {
-               q->streaming = 0;
+       if (ret)
                return ret;
-       }
        call_all(&go->v4l2_dev, video, s_stream, 1);
        v4l2_ctrl_grab(go->mpeg_video_gop_size, true);
        v4l2_ctrl_grab(go->mpeg_video_gop_closure, true);
@@ -430,7 +427,6 @@ static void go7007_stop_streaming(struct vb2_queue *q)
        struct go7007 *go = vb2_get_drv_priv(q);
        unsigned long flags;
 
-       q->streaming = 0;
        go7007_stream_stop(go);
        mutex_lock(&go->hw_lock);
        go7007_reset_encoder(go);