summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarek Szyprowski <m.szyprowski@samsung.com>2011-10-25 03:07:59 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2011-11-08 09:05:41 -0200
commitbd50d999d4d4f311fda9b777d1e567433cc0f142 (patch)
tree8cacbc154f1ce67d0de756de2c5e1a9810430c49
parent4907602f85d454c127d20ac943ead13e2919898d (diff)
downloadlinux-bd50d999d4d4f311fda9b777d1e567433cc0f142.tar.gz
linux-bd50d999d4d4f311fda9b777d1e567433cc0f142.tar.bz2
linux-bd50d999d4d4f311fda9b777d1e567433cc0f142.zip
[media] media: vb2: reset queued list on REQBUFS(0) call
Queued list was not reset on REQBUFS(0) call. This caused to enqueue a freed buffer to the driver. Reported-by: Angela Wan <angela.j.wan@gmail.com> Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--drivers/media/video/videobuf2-core.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/media/video/videobuf2-core.c b/drivers/media/video/videobuf2-core.c
index e7c52ff3c761..95a3f5e82aef 100644
--- a/drivers/media/video/videobuf2-core.c
+++ b/drivers/media/video/videobuf2-core.c
@@ -265,6 +265,7 @@ static void __vb2_queue_free(struct vb2_queue *q, unsigned int buffers)
q->num_buffers -= buffers;
if (!q->num_buffers)
q->memory = 0;
+ INIT_LIST_HEAD(&q->queued_list);
}
/**