Files
linux/drivers
Hans Verkuil 63faabfd89 [media] vb2: fix race condition between REQBUFS and QBUF/PREPARE_BUF
When preparing a buffer the queue lock is released for a short while
if the memory mode is USERPTR (see __buf_prepare for the details), which
would allow a race with a REQBUFS which can free the buffers. Removing the
buffers from underneath __buf_prepare is obviously a bad idea, so we
check if any of the buffers is in the state PREPARING, and if so we
just return -EAGAIN.

If this happens, then the application does something really strange. The
REQBUFS call can be retried safely, since this situation is transient.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
2014-01-07 07:08:47 -02:00
..
2013-11-19 15:53:02 -05:00
2013-10-29 12:53:07 +02:00
2013-11-07 19:24:20 +01:00
2013-11-19 01:06:28 +01:00
2013-11-15 09:32:23 +09:00
2013-11-14 11:04:38 -08:00