Re: [PATCH v2] media: imx: Remove incorrect check for queue state in start/stop_streaming

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 12/01/2017 10:53 AM, Ian Jamison wrote:
It is possible to call STREAMON without the minimum number of
buffers queued. In this case the vb2_queue state will be set to
streaming but the start_streaming vb2_op will not be called.
Later when enough buffers are queued, start_streaming will
be called but vb2_is_streaming will already return true.

Also removed the queue state check in stop_streaming since it's
not valid there either.

Reviewed-by: Steve Longerbeam <steve_longerbeam@xxxxxxxxxx>

Signed-off-by: Ian Jamison <ian.dev@xxxxxxxxxx>
---
Since v1:
     Remove check in capture_stop_streaming as recommended by Hans.

  drivers/staging/media/imx/imx-media-capture.c | 6 ------
  1 file changed, 6 deletions(-)

diff --git a/drivers/staging/media/imx/imx-media-capture.c b/drivers/staging/media/imx/imx-media-capture.c
index ea145bafb880..7b6763802db8 100644
--- a/drivers/staging/media/imx/imx-media-capture.c
+++ b/drivers/staging/media/imx/imx-media-capture.c
@@ -449,9 +449,6 @@ static int capture_start_streaming(struct vb2_queue *vq, unsigned int count)
  	unsigned long flags;
  	int ret;
- if (vb2_is_streaming(vq))
-		return 0;
-
  	ret = imx_media_pipeline_set_stream(priv->md, &priv->src_sd->entity,
  					    true);
  	if (ret) {
@@ -480,9 +477,6 @@ static void capture_stop_streaming(struct vb2_queue *vq)
  	unsigned long flags;
  	int ret;
- if (!vb2_is_streaming(vq))
-		return;
-
  	spin_lock_irqsave(&priv->q_lock, flags);
  	priv->stop = true;
  	spin_unlock_irqrestore(&priv->q_lock, flags);




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux