1
linux/include/media
Arjan van de Ven 81b2dbcad8 Fix a deadlock in the bttv driver
vidiocgmbuf() does this:
        mutex_lock(&fh->cap.vb_lock);
        retval = videobuf_mmap_setup(&fh->cap, gbuffers, gbufsize,
                                     V4L2_MEMORY_MMAP);

and videobuf_mmap_setup() then just does
        mutex_lock(&q->vb_lock);
        ret = __videobuf_mmap_setup(q, bcount, bsize, memory);
        mutex_unlock(&q->vb_lock);

which is an obvious double-take deadlock.

This patch fixes this by having vidiocgmbuf() just call the
__videobuf_mmap_setup function instead.

Acked-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Reported-by: Koos Vriezen <koos.vriezen@gmail.com>
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-05-20 10:12:26 -07:00
..
audiochip.h
cs53l32a.h
cs5345.h V4L/DVB (6869): cs5345: new i2c driver 2008-01-25 19:04:08 -02:00
cx2341x.h V4L/DVB (6861): cx2341x: command argument should be u32 instead of int 2008-01-25 19:04:04 -02:00
cx25840.h V4L/DVB (7002): cx25840: Add basic CX23885 AVCore support 2008-01-25 19:04:47 -02:00
i2c-addr.h
ir-common.h V4L/DVB (7677): saa7134: Add/fix Beholder entries 2008-04-24 14:09:46 -03:00
ir-kbd-i2c.h
m52790.h V4L/DVB (6486): m52790: add new Mitsubishi A/V switch i2c driver 2008-01-25 19:01:46 -02:00
msp3400.h
ovcamchip.h
pwc-ioctl.h
rds.h include/media/: Spelling fixes 2008-02-03 17:19:47 +02:00
saa6752hs.h
saa7115.h
saa7127.h
saa7146_vv.h V4L/DVB (6496): saa7146_vv.h: remove wrong include <linux/videodev.h> 2008-01-25 19:01:52 -02:00
saa7146.h [PATCH] Fix breakage after SG cleanups 2007-10-23 12:02:39 -07:00
soc_camera.h V4L/DVB (7501): soc-camera: use a spinlock for videobuffer queue 2008-04-24 14:07:57 -03:00
tuner-types.h V4L/DVB (7352): tuner-simple: enable digital tuning support for Philips FMD1216ME 2008-04-24 14:07:50 -03:00
tuner.h V4L/DVB (7381): tuner: rename TUNER_PHILIPS_ATSC to TUNER_PHILIPS_FCV1236D 2008-04-24 14:07:52 -03:00
tvaudio.h
tveeprom.h
tvp5150.h
upd64031a.h
upd64083.h
v4l2-chip-ident.h V4L/DVB (7786): cx18: new driver for the Conexant CX23418 MPEG encoder chip 2008-04-29 18:41:41 -03:00
v4l2-common.h i2c: Add support for device alias names 2008-04-29 23:11:39 +02:00
v4l2-dev.h V4L/DVB (7665): videodev: Add default vidioc handler 2008-04-24 14:09:45 -03:00
v4l2-i2c-drv-legacy.h i2c: Convert some more new-style drivers to use module aliasing 2008-05-11 20:37:06 +02:00
v4l2-i2c-drv.h i2c: Convert some more new-style drivers to use module aliasing 2008-05-11 20:37:06 +02:00
v4l2-int-device.h V4L/DVB (6580): Set slave's master before master's attach call. 2008-01-25 19:02:06 -02:00
videobuf-core.h Fix a deadlock in the bttv driver 2008-05-20 10:12:26 -07:00
videobuf-dma-sg.h V4L/DVB (7554): videobuf-dma-sg: Remove unused flag 2008-04-24 14:08:48 -03:00
videobuf-dvb.h V4L/DVB (7538): Adds selectable adapter numbers as per module option 2008-04-24 14:08:00 -03:00
videobuf-vmalloc.h V4L/DVB (7566): videobuf-dvb: allow its usage with videobuf-vmalloc 2008-04-24 14:09:39 -03:00
wm8775.h