mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-24 05:04:00 +08:00
b646f0b729
The __vb2_queue_cancel function marks the queue as not streaming and then WARNs when buffers are still owned by the driver. It proceeds to complete all active buffers by calling vb2_buffer_done with the new buffer state set to VB2_BUF_STATE_ERROR in that case. This triggers another WARN_ON due to as new state not being VB2_BUF_STATE_QUEUED while the queue is not streaming. Check buffer ownership and complete all active buffers before marking the queue as not streaming to avoid the double WARN_on. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
tuner-core.c | ||
v4l2-async.c | ||
v4l2-clk.c | ||
v4l2-common.c | ||
v4l2-compat-ioctl32.c | ||
v4l2-ctrls.c | ||
v4l2-dev.c | ||
v4l2-device.c | ||
v4l2-dv-timings.c | ||
v4l2-event.c | ||
v4l2-fh.c | ||
v4l2-ioctl.c | ||
v4l2-mem2mem.c | ||
v4l2-of.c | ||
v4l2-subdev.c | ||
videobuf2-core.c | ||
videobuf2-dma-contig.c | ||
videobuf2-dma-sg.c | ||
videobuf2-dvb.c | ||
videobuf2-memops.c | ||
videobuf2-vmalloc.c | ||
videobuf-core.c | ||
videobuf-dma-contig.c | ||
videobuf-dma-sg.c | ||
videobuf-dvb.c | ||
videobuf-vmalloc.c |