[media] vb2: call buf_finish from __queue_cancel
authorHans Verkuil <hans.verkuil@cisco.com>
Tue, 4 Mar 2014 10:34:49 +0000 (07:34 -0300)
committerMauro Carvalho Chehab <m.chehab@samsung.com>
Tue, 11 Mar 2014 09:56:39 +0000 (06:56 -0300)
commit9c0863b1cc485f2bacac0675c68b73e5341cfd26
treeadd2ca56deca15ea064d34966edfa21dcef40fe3
parent1a17948184a3320e0bb0aab561112211d2e9b7a8
[media] vb2: call buf_finish from __queue_cancel

If a queue was canceled, then the buf_finish op was never called for the
pending buffers. So add this call to queue_cancel. Before calling buf_finish
set the buffer state to PREPARED, which is the correct state. That way the
states DONE and ERROR will only be seen in buf_finish if streaming is in
progress.

Since buf_finish can now be called from non-streaming state we need to
adapt the handful of drivers that actually need to know this.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
drivers/media/parport/bw-qcam.c
drivers/media/pci/sta2x11/sta2x11_vip.c
drivers/media/usb/uvc/uvc_queue.c
drivers/media/v4l2-core/videobuf2-core.c
include/media/videobuf2-core.h