linux/drivers/media/video
Chris Rankin d7222e7d6f [media] em28xx: fix race on disconnect
This patch closes the race on the device and extension lists at USB disconnect
time. Previously, the device was removed from the device list during
em28xx_release_resources(), and then passed to the em28xx_close_extension()
function so that all extensions could run their fini() operations. However, this
left a (brief, theoretical, highly unlikely ;-)) window between these two calls
during which a new module could call em28xx_register_extension(). The result
would have been that the em28xx_usb_disconnect() function would also have passed
the device to the new extension's fini() function, despite never having called
the extension's init() function.

This patch also restores em28xx_close_extension()'s symmetry with
em28xx_init_extension(), and establishes the property that every device in the
device list must have been initialised for every extension in the extension list.

Signed-off-by: Chris Rankin <rankincj@yahoo.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-09-24 12:12:48 -03:00
..
au0828 [media] drivers/media: do not use EXTRA_CFLAGS 2011-09-03 18:50:59 -03:00
bt8xx [media] bt8xx: Use current logging styles 2011-09-03 21:02:52 -03:00
cpia2 [media] Stop using linux/version.h on most video drivers 2011-07-27 17:53:12 -03:00
cx18 [media] cx18: Fix videobuf capture 2011-09-18 08:03:39 -03:00
cx88 [media] drivers/media: do not use EXTRA_CFLAGS 2011-09-03 18:50:59 -03:00
cx231xx [media] drivers/media: do not use EXTRA_CFLAGS 2011-09-03 18:50:59 -03:00
cx23885 [media] cx23885, cx25840: Provide IR Rx timeout event reports 2011-09-24 12:00:32 -03:00
cx25840 [media] cx23885, cx25840: Provide IR Rx timeout event reports 2011-09-24 12:00:32 -03:00
davinci [media] davinci vpbe: remove unused macro 2011-09-23 23:07:49 -03:00
em28xx [media] em28xx: fix race on disconnect 2011-09-24 12:12:48 -03:00
et61x251 [media] et61x251: Use current logging styles 2011-09-03 21:11:59 -03:00
gspca [media] gspca - main: Display the subdriver name and version at probe time 2011-09-23 23:31:52 -03:00
hdpvr [media] drivers/media: do not use EXTRA_CFLAGS 2011-09-03 18:50:59 -03:00
ivtv [media] ivtv: fill in service_set 2011-09-06 14:51:27 -03:00
m5mols [media] m5mols: Remove superfluous irq field from the platform data struct 2011-09-24 00:23:03 -03:00
marvell-ccic [media] mmp_camera: add MODULE_ALIAS 2011-09-18 08:05:43 -03:00
omap [media] V4l2: OMAP: VOUT: Minor Cleanup, removing the unnecessary code 2011-07-27 17:56:06 -03:00
omap3isp [media] omap3isp: video: Avoid crashes when pipeline set stream operation fails 2011-09-21 15:30:13 -03:00
pvrusb2 [media] drivers/media: do not use EXTRA_CFLAGS 2011-09-03 18:50:59 -03:00
pwc [media] pwc: add support for VIDIOC_LOG_STATUS 2011-09-21 10:51:20 -03:00
s5p-fimc [media] s5p-fimc: Convert to use generic media bus polarity flags 2011-09-24 00:22:31 -03:00
s5p-mfc [media] media: s5p-mfc: fix section mismatch 2011-09-21 14:53:37 -03:00
s5p-tv [media] media: vb2: change queue initialization order 2011-09-06 15:07:20 -03:00
saa7134 [media] drivers/media: do not use EXTRA_CFLAGS 2011-09-03 18:50:59 -03:00
saa7164 [media] saa7164: Adding support for HVR2200 card id 0x8953 2011-09-21 10:16:31 -03:00
sn9c102 [media] return -ENOTTY for unsupported ioctl's at legacy drivers 2011-07-27 17:53:38 -03:00
tlg2300 [media] drivers/media: do not use EXTRA_CFLAGS 2011-09-03 18:50:59 -03:00
tm6000 [media] move tm6000 to drivers/media/video 2011-09-23 09:32:35 -03:00
usbvision [media] drivers/media: do not use EXTRA_CFLAGS 2011-09-03 18:50:59 -03:00
uvc [media] uvcvideo: Add a mapping for H.264 payloads 2011-09-23 20:07:59 -03:00
zoran [media] Stop using linux/version.h on most video drivers 2011-07-27 17:53:12 -03:00
adp1653.c [media] adp1653: set media entity type 2011-09-22 10:26:46 -03:00
adv7170.c
adv7175.c [media] adv7175: support s_power 2011-01-19 11:45:55 -02:00
adv7180.c
adv7343_regs.h [media] adv7343: use control framework 2011-03-21 20:31:49 -03:00
adv7343.c [media] adv7343: use control framework 2011-03-21 20:31:49 -03:00
ak881x.c
arv.c [media] Stop using linux/version.h on most video drivers 2011-07-27 17:53:12 -03:00
atmel-isi.c [media] media: vb2: change queue initialization order 2011-09-06 15:07:20 -03:00
bt819.c [media] vpx3220, bt819: fix compiler warnings 2011-09-06 14:46:17 -03:00
bt856.c
bt866.c
btcx-risc.c
btcx-risc.h
bw-qcam.c [media] drivers/media/video: add missing kfree 2011-07-27 17:55:55 -03:00
c-qcam.c [media] drivers/media/video: add missing kfree 2011-07-27 17:55:55 -03:00
cs53l32a.c
cs5345.c [media] cs5345: use the control framework 2011-03-21 20:31:49 -03:00
cs8420.h
cx2341x.c [media] v4l2-ctrls: use const char * const * for the menu arrays 2010-12-30 08:02:14 -02:00
fsl-viu.c [media] Stop using linux/version.h on the remaining video drivers 2011-07-27 17:53:16 -03:00
hexium_gemini.c [media] saa7146: Use current logging styles 2011-09-03 20:54:14 -03:00
hexium_orion.c [media] saa7146: Use current logging styles 2011-09-03 20:54:14 -03:00
ibmmpeg2.h
imx074.c [media] imx074: return a meaningful error code instead of -1 2011-04-13 09:54:35 -03:00
indycam.c
indycam.h
ir-kbd-i2c.c [media] ir-kbd-i2c: pass device code w/key in hauppauge case 2011-03-22 19:24:18 -03:00
Kconfig [media] move tm6000 to drivers/media/video 2011-09-23 09:32:35 -03:00
ks0127.c
ks0127.h
m52790.c [media] v4l: make sure drivers supply a zeroed struct v4l2_subdev 2011-04-29 12:33:28 -03:00
Makefile [media] move tm6000 to drivers/media/video 2011-09-23 09:32:35 -03:00
mem2mem_testdev.c [media] media: vb2: change plane sizes array to unsigned int[] 2011-09-06 15:04:27 -03:00
meye.c [media] v4l2-ioctl: add priority handling support 2011-03-22 16:37:59 -03:00
meye.h
msp3400-driver.c [media] msp3400: fill in v4l2_tuner based on vt->type field 2011-07-07 17:28:30 -03:00
msp3400-driver.h
msp3400-kthreads.c Fix common misspellings 2011-03-31 11:26:23 -03:00
mt9m001.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
mt9m111.c [media] mt9m111: move lastpage to struct mt9m111 for multi instances 2011-09-21 14:03:24 -03:00
mt9p031.c [media] mt9p031: Aptina (Micron) MT9P031 5MP sensor driver 2011-09-11 09:49:28 -03:00
mt9t001.c [media] mt9t001: Aptina (Micron) MT9T001 3MP sensor driver 2011-09-21 15:31:08 -03:00
mt9t031.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
mt9t112.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
mt9v011.c [media] mt9v011: Fixed gain calculation 2011-07-27 17:52:25 -03:00
mt9v022.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
mt9v032.c [media] v4l: mt9v032: Fix Bayer pattern 2011-07-27 17:56:10 -03:00
mx1_camera.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
mx2_camera.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
mx3_camera.c [media] media: vb2: dma contig allocator: use dma_addr instread of paddr 2011-09-06 15:05:10 -03:00
mxb.c [media] saa7146: Use current logging styles 2011-09-03 20:54:14 -03:00
mxb.h
noon010pc30.c [media] noon010pc30: Remove g_chip_ident operation handler 2011-09-21 14:31:34 -03:00
omap1_camera.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
omap24xxcam-dma.c
omap24xxcam.c Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 2011-07-30 00:08:53 -07:00
omap24xxcam.h
ov772x.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
ov2640.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
ov5642.c [media] ov5642: include module.h for its facilities 2011-07-29 12:54:36 -03:00
ov6650.c Fix common misspellings 2011-03-31 11:26:23 -03:00
ov7670.c [media] marvell-cam: Move cafe-ccic into its own directory 2011-07-27 17:53:00 -03:00
ov9640.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
ov9640.h
ov9740.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
pms.c [media] Stop using linux/version.h on most video drivers 2011-07-27 17:53:12 -03:00
pxa_camera.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
rj54n1cb0c.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
s2255drv.c [media] Stop using linux/version.h on the remaining video drivers 2011-07-27 17:53:16 -03:00
saa711x_regs.h
saa717x.c
saa6588.c [media] saa6588: rename rds.h to saa6588.h 2010-12-29 08:17:18 -02:00
saa7110.c [media] saa7110: use control framework 2011-03-21 20:31:50 -03:00
saa7115.c [media] saa7115: use the new auto cluster support 2011-09-21 10:51:49 -03:00
saa7121.h
saa7127.c
saa7146.h
saa7146reg.h
saa7185.c
saa7191.c
saa7191.h
sh_mobile_ceu_camera.c [media] media: vb2: dma contig allocator: use dma_addr instread of paddr 2011-09-06 15:05:10 -03:00
sh_mobile_csi2.c [media] V4L: sh_mobile_csi2: switch away from using the soc-camera bus notifier 2011-07-27 17:56:08 -03:00
sh_vou.c [media] Stop using linux/version.h on the remaining video drivers 2011-07-27 17:53:16 -03:00
soc_camera_platform.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
soc_camera.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
soc_mediabus.c [media] V4L: soc-camera: add more format look-up entries 2011-05-20 12:05:27 -03:00
sr030pc30.c [media] sr030pc30: Remove empty s_stream op 2011-09-21 12:48:45 -03:00
stk-sensor.c
stk-webcam.c [media] stk-webcam.c: webcam LED bug fix 2011-09-23 23:07:59 -03:00
stk-webcam.h
tcm825x.c Fix common misspellings 2011-03-31 11:26:23 -03:00
tcm825x.h
tda7432.c [media] Correct and add some parameter descriptions 2011-07-27 17:52:59 -03:00
tda9840.c [media] v4l: make sure drivers supply a zeroed struct v4l2_subdev 2011-04-29 12:33:28 -03:00
tea6415c.c [media] v4l: make sure drivers supply a zeroed struct v4l2_subdev 2011-04-29 12:33:28 -03:00
tea6415c.h
tea6420.c [media] v4l: make sure drivers supply a zeroed struct v4l2_subdev 2011-04-29 12:33:28 -03:00
tea6420.h
ths7303.c
timblogiw.c [media] Stop using linux/version.h on most video drivers 2011-07-27 17:53:12 -03:00
tlv320aic23b.c [media] tlv320aic23b: use control framework 2011-03-21 20:31:50 -03:00
tuner-core.c [media] xc4000: removed card_type 2011-07-27 17:52:40 -03:00
tvaudio.c [media] tvaudio: fix compiler warnings 2011-09-06 14:44:30 -03:00
tveeprom.c [media] tveeprom: update hauppauge tuner list thru 174 2011-05-20 09:27:15 -03:00
tvp514x_regs.h
tvp514x.c [media] tvp514x: use the control framework 2011-03-21 20:31:50 -03:00
tvp5150_reg.h
tvp5150.c [media] tvp5150: device detection should be done only once 2011-03-21 20:32:04 -03:00
tvp7002_reg.h
tvp7002.c [media] TVP7002: Changed register values 2011-09-22 10:25:38 -03:00
tw9910.c [media] V4L: soc-camera: remove soc-camera bus and devices on it 2011-07-27 17:56:08 -03:00
upd64031a.c [media] v4l: make sure drivers supply a zeroed struct v4l2_subdev 2011-04-29 12:33:28 -03:00
upd64083.c [media] v4l: make sure drivers supply a zeroed struct v4l2_subdev 2011-04-29 12:33:28 -03:00
v4l2-common.c [media] v4l2-ctrls: add new bitmask control type 2011-07-27 17:55:38 -03:00
v4l2-compat-ioctl32.c [media] v4l2-compat-ioctl32: add VIDIOC_DQEVENT support 2011-07-27 17:53:20 -03:00
v4l2-ctrls.c [media] v4l2-ctrls: implement new volatile autocluster scheme 2011-09-21 10:48:30 -03:00
v4l2-dev.c [media] v4l: Don't access media entity after is has been destroyed 2011-06-30 23:12:36 -03:00
v4l2-device.c [media] v4l2: uvcvideo use after free bug fix 2011-09-21 16:52:52 -03:00
v4l2-event.c [media] v4l2-ctrls/v4l2-events: small coding style cleanups 2011-07-27 17:53:34 -03:00
v4l2-fh.c [media] v4l2-event/ctrls/fh: allocate events per fh and per type instead of just per-fh 2011-07-27 17:53:31 -03:00
v4l2-int-device.c
v4l2-ioctl.c [media] media: v4l: remove single to multiplane conversion 2011-09-06 15:03:10 -03:00
v4l2-mem2mem.c [media] media: mem2mem: eliminate possible NULL pointer dereference 2011-09-06 15:03:26 -03:00
v4l2-subdev.c [media] v4l subdev: add dispatching for VIDIOC_DBG_G_REGISTER and VIDIOC_DBG_S_REGISTER 2011-09-23 23:07:56 -03:00
via-camera.c [media] [Resend] viacam: Don't explode if pci_find_bus() returns NULL 2011-09-11 09:33:39 -03:00
via-camera.h
videobuf2-core.c [media] media: vb2: change queue initialization order 2011-09-06 15:07:20 -03:00
videobuf2-dma-contig.c [media] media: vb2: dma contig allocator: use dma_addr instread of paddr 2011-09-06 15:05:10 -03:00
videobuf2-dma-sg.c [media] videobuf2: Do not unconditionally map S/G buffers into kernel space 2011-09-03 10:57:33 -03:00
videobuf2-memops.c [media] media: vb2: fix userptr VMA release seq 2011-09-06 15:05:21 -03:00
videobuf2-vmalloc.c [media] Update Pawel Osciak's e-mail address 2011-03-22 04:55:05 -03:00
videobuf-core.c [media] V4L: remove V4L1 compatibility mode 2010-12-29 08:17:07 -02:00
videobuf-dma-contig.c Revert "[media] V4L: videobuf, don't use dma addr as physical" 2011-04-19 10:54:44 -07:00
videobuf-dma-sg.c [media] videobuf_pages_to_sg: sglist[0] length problem 2011-07-27 17:52:19 -03:00
videobuf-dvb.c
videobuf-vmalloc.c
vino.c [media] Stop using linux/version.h on most video drivers 2011-07-27 17:53:12 -03:00
vino.h
vivi.c [media] vivi: add support for VIDIOC_LOG_STATUS 2011-09-21 10:51:10 -03:00
vp27smpx.c
vpx3220.c [media] vpx3220, bt819: fix compiler warnings 2011-09-06 14:46:17 -03:00
w9966.c [media] Stop using linux/version.h on most video drivers 2011-07-27 17:53:12 -03:00
wm8739.c
wm8775.c [media] Add proper audio support for Nova-S Plus with wm8775 ADC 2011-03-21 20:32:19 -03:00
zr364xx.c [media] drivers/media/video/zr364xx.c: add missing cleanup code 2011-09-03 18:43:58 -03:00