linux/drivers/media/video
Brandon Philips 78718e5d44 V4L/DVB (7492): vivi: Simplify the vivi driver and avoid deadlocks
vivi previously had a very complex queuing system and held spinlocks while
doing copy_to_user, kmalloc, etc.  This caused the driver to easily deadlock
when a multi-threaded application used it and revealed bugs in videobuf too.

This replaces the copy_to_user with memcpy since we were never copying to user
space addresses.  And makes the kmalloc atomic.

Signed-off-by: Brandon Philips <bphilips@suse.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-24 14:07:57 -03:00
..
bt8xx V4L/DVB (7462): bttv: Fix some API non-compliances for some audio/input V4L2 calls 2008-04-24 14:07:56 -03:00
cpia2 V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
cx88 V4L/DVB (7463): cx88: Enable color killer by default 2008-04-24 14:07:56 -03:00
cx23885 V4L/DVB (7432): tda18271: allow device-specific configuration of rf agc top 2008-04-24 14:07:55 -03:00
cx25840 V4L/DVB (7344): cx25840: better PAL-M and NTSC-KR handling 2008-04-24 14:07:49 -03:00
em28xx V4L/DVB (7381): tuner: rename TUNER_PHILIPS_ATSC to TUNER_PHILIPS_FCV1236D 2008-04-24 14:07:52 -03:00
et61x251 V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
ivtv V4L/DVB (7378): cleanup variable initialization 2008-04-24 14:07:51 -03:00
ovcamchip V4L/DVB (6079): Cleanup: remove linux/moduleparam.h from drivers/media files 2007-10-09 22:06:17 -03:00
pvrusb2 V4L/DVB (7447): pvrusb2: Fix compilation warning 2008-04-24 14:07:55 -03:00
pwc V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
saa7134 V4L/DVB (7458): saa7134: Adds analog support for Avermedia A16D 2008-04-24 14:07:56 -03:00
sn9c102 V4L/DVB (7480): make sn9c102_i2c_try_write() static 2008-04-24 14:07:57 -03:00
usbvideo V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
usbvision V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
zc0301 V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
Kconfig V4L/DVB (7218): Fix breakage in mt9m001 and mt9v022 driver if "CONFIG_GENERIC_GPIO is not set" 2008-04-24 14:07:43 -03:00
Makefile V4L/DVB (7483): tuner-simple: fix broken build dependency 2008-04-24 14:07:57 -03:00
adv7170.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
adv7175.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
arv.c V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
bt819.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
bt856.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
bt866.c V4L/DVB (6819): i2c: fix drivers/media/video/bt866.c 2007-12-13 17:58:05 -02:00
btcx-risc.c V4L/DVB (6079): Cleanup: remove linux/moduleparam.h from drivers/media files 2007-10-09 22:06:17 -03:00
btcx-risc.h
bw-qcam.c V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
bw-qcam.h
c-qcam.c V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
cafe_ccic-regs.h V4L/DVB (5690): Cafe_ccic: Properly power down the sensor 2007-05-22 16:16:27 -03:00
cafe_ccic.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
compat_ioctl32.c V4L/DVB (5989): V4L: Add additional ioctls to compat_ioctl32 2007-10-09 22:04:45 -03:00
cpia.c V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
cpia.h
cpia_pp.c
cpia_usb.c
cs53l32a.c V4L/DVB (6739): cs53l32a: codingstyle cleanups 2008-01-25 19:03:16 -02:00
cs5345.c V4L/DVB (6869): cs5345: new i2c driver 2008-01-25 19:04:08 -02:00
cs8420.h
cx2341x.c V4L/DVB (6861): cx2341x: command argument should be u32 instead of int 2008-01-25 19:04:04 -02:00
dabfirmware.h V4L/DVB (7248): dabfirmware.h add missing license 2008-04-24 14:07:44 -03:00
dabusb.c V4L/DVB (7274): dabusb: fix shadowed variable warning in dabusb.c 2008-04-24 14:07:46 -03:00
dabusb.h
dpc7146.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
font.h
hexium_gemini.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
hexium_orion.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
ibmmpeg2.h
indycam.c drivers/media/: Spelling fixes 2008-02-03 17:18:59 +02:00
indycam.h
ir-kbd-i2c.c V4L/DVB (7332): ir-kbd-i2c: Minor optimization in ir_probe 2008-04-24 14:07:49 -03:00
ks0127.c i2c: Use the driver model reference counting 2008-01-27 18:14:48 +01:00
ks0127.h
m52790.c V4L/DVB (6862): ivtv: really remove i2c legacy support from drivers that no longer need it 2008-01-25 19:04:05 -02:00
meye.c V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
meye.h Convert files to UTF-8 and some cleanups 2007-10-19 23:21:04 +02:00
msp3400-driver.c V4L/DVB (6866): msp3400: CodingStyle cleanups 2008-01-25 19:04:06 -02:00
msp3400-driver.h
msp3400-kthreads.c V4L/DVB (7343): msp3400: fix SECAM D/K handling 2008-04-24 14:07:49 -03:00
mt9m001.c V4L/DVB (7406): soc-camera: improve separation between soc_camera_ops and soc_camera_device 2008-04-24 14:07:53 -03:00
mt9v022.c V4L/DVB (7406): soc-camera: improve separation between soc_camera_ops and soc_camera_device 2008-04-24 14:07:53 -03:00
mt20xx.c V4L/DVB (7135): remove PREFIX from users of tuner_foo printk macros 2008-04-24 13:42:26 -03:00
mt20xx.h V4L/DVB (6134): tuner: alter build to produce separate modules 2007-10-09 22:07:43 -03:00
mxb.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
mxb.h
ov511.c V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
ov511.h
ov7670.c V4L/DVB (6079): Cleanup: remove linux/moduleparam.h from drivers/media files 2007-10-09 22:06:17 -03:00
planb.c V4L/DVB (6407): planb: fix obvious interrupt handling bugs 2007-11-04 21:41:20 -02:00
planb.h
pms.c V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
pxa_camera.c V4L/DVB (7336): soc-camera: streamline hardware parameter negotiation 2008-04-24 14:07:49 -03:00
saa711x.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
saa711x_regs.h
saa5246a.c V4L/DVB (6684): Complement va_start() with va_end() + style fixes 2007-12-11 18:08:16 -02:00
saa5246a.h
saa5249.c V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
saa6588.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
saa7110.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
saa7111.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
saa7114.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
saa7115.c V4L/DVB (7342): saa7115: fix PAL-Nc handling 2008-04-24 14:07:49 -03:00
saa7121.h
saa7127.c V4L/DVB (6867): saa7127: CodingStyle cleanups 2008-01-25 19:04:06 -02:00
saa7146.h
saa7146reg.h
saa7185.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
saa7191.c V4L/DVB (6148): Fix a warning at saa7191_probe 2007-09-14 13:13:42 -03:00
saa7191.h
saa7196.h
se401.c V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
se401.h
soc_camera.c V4L/DVB (7406): soc-camera: improve separation between soc_camera_ops and soc_camera_device 2008-04-24 14:07:53 -03:00
stk-sensor.c V4L/DVB (7104): stk-sensor.c: make 2 functions static 2008-02-18 11:15:08 -03:00
stk-webcam.c V4L/DVB (7238): make stk_camera_{suspend,resume}() static 2008-04-24 14:07:44 -03:00
stk-webcam.h V4L/DVB (7104): stk-sensor.c: make 2 functions static 2008-02-18 11:15:08 -03:00
stradis.c V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
stv680.c V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
stv680.h
tcm825x.c V4L/DVB (7086): driver: tcm825x - fix logical typo error 2008-02-18 11:14:57 -03:00
tcm825x.h V4L/DVB (6220): TCM825x: Add support for vidioc_int_g_ifparm call, small cleanups 2007-10-09 22:14:40 -03:00
tda7432.c V4L/DVB (6419): V4L2 port of tda7432 from V4L1 api 2008-01-25 19:01:00 -02:00
tda8290.c V4L/DVB (7393): tda827x: fixed support of tuners with LNA 2008-04-24 14:07:52 -03:00
tda8290.h V4L/DVB (7393): tda827x: fixed support of tuners with LNA 2008-04-24 14:07:52 -03:00
tda9840.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
tda9840.h
tda9875.c V4L/DVB (6420): V4L2 conversion for tda9875 from V4L1 API 2008-01-25 19:01:00 -02:00
tda9887.c V4L/DVB (7346): tda9887: allow multiple driver instances for the same hardware to share state 2008-04-24 14:07:49 -03:00
tda9887.h V4L/DVB (6842): tda9887: remove dependency on struct tuner 2008-01-25 19:03:55 -02:00
tea5761.c V4L/DVB (7135): remove PREFIX from users of tuner_foo printk macros 2008-04-24 13:42:26 -03:00
tea5761.h V4L/DVB (6134): tuner: alter build to produce separate modules 2007-10-09 22:07:43 -03:00
tea5767.c V4L/DVB (7135): remove PREFIX from users of tuner_foo printk macros 2008-04-24 13:42:26 -03:00
tea5767.h V4L/DVB (6385): Adds the capability of configuring tea5767 support 2008-01-25 19:00:54 -02:00
tea6415c.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
tea6415c.h
tea6420.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
tea6420.h
tlv320aic23b.c V4L/DVB (6740): tlv320aic23b: codingstyle cleanups 2008-01-25 19:03:17 -02:00
tuner-3036.c
tuner-core.c V4L/DVB (7399): Removes video_dev from tuner-xc2028 config struct 2008-04-24 14:07:53 -03:00
tuner-i2c.h V4L/DVB (7379): tuner: prevent instance sharing if i2c adapter is NULL 2008-04-24 14:07:51 -03:00
tuner-simple.c V4L/DVB (7407): tuner-simple: add module options to specify rf input 2008-04-24 14:07:53 -03:00
tuner-simple.h V4L/DVB (7127): tuner: remove dependency of tuner-core on tuner-types 2008-04-24 13:42:24 -03:00
tuner-types.c V4L/DVB (7381): tuner: rename TUNER_PHILIPS_ATSC to TUNER_PHILIPS_FCV1236D 2008-04-24 14:07:52 -03:00
tuner-xc2028-types.h V4L/DVB (6676): Improve s-code support 2008-01-25 19:02:58 -02:00
tuner-xc2028.c V4L/DVB (7439): tuner-xc2028: Adds an option to allow forcing to load an specific firmware name 2008-04-24 14:07:55 -03:00
tuner-xc2028.h V4L/DVB (6893): tuner-xc2028: fix xc2028_attach function 2008-01-25 19:04:14 -02:00
tvaudio.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
tveeprom.c V4L/DVB (7240): tveeprom: remove obsolete i2c driver code 2008-04-24 14:07:44 -03:00
tvp5150.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
tvp5150_reg.h
upd64031a.c V4L/DVB (6864): upd64031a: CodingStyle cleanup 2008-01-25 19:04:05 -02:00
upd64083.c V4L/DVB (6863): upd64083: CodingStyle cleanups 2008-01-25 19:04:05 -02:00
v4l1-compat.c V4L/DVB (7365): reduce stack usage of v4l1_compat_sync 2008-04-24 14:07:50 -03:00
v4l2-common.c V4L/DVB (7133): Fix Kconfig dependencies 2008-02-18 11:14:53 -03:00
v4l2-int-device.c V4L/DVB (7485): v4l2-int-device.c: add MODULE_LICENSE 2008-04-01 19:35:47 -03:00
videobuf-core.c V4L/DVB (7488): videobuf: Simplify videobuf_waiton logic and possibly avoid missed wakeup 2008-04-24 14:07:57 -03:00
videobuf-dma-sg.c V4L/DVB (7283): videobuf-dma-sg: Remove unused variable 2008-04-24 14:07:46 -03:00
videobuf-dvb.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
videobuf-vmalloc.c V4L/DVB (7489): videobuf-vmalloc.c: Remove buf_release from videobuf_vm_close 2008-04-24 14:07:57 -03:00
videocodec.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
videocodec.h
videodev.c V4L/DVB (7133): Fix Kconfig dependencies 2008-02-18 11:14:53 -03:00
vino.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
vino.h
vivi.c V4L/DVB (7492): vivi: Simplify the vivi driver and avoid deadlocks 2008-04-24 14:07:57 -03:00
vp27smpx.c V4L/DVB (6865): vp27smpx: CodingStyle cleanup 2008-01-25 19:04:06 -02:00
vpx3220.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
w9966.c V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
w9968cf.c V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
w9968cf.h
w9968cf_decoder.h
w9968cf_vpp.h
wm8739.c V4L/DVB (6862): ivtv: really remove i2c legacy support from drivers that no longer need it 2008-01-25 19:04:05 -02:00
wm8775.c V4L/DVB (6737): wm8775: codingstyle cleanup 2008-01-25 19:03:16 -02:00
zoran.h V4L/DVB (7219): zoran: Fix namespace conflicts with Zoran 'GPIO_MAX' enum 2008-02-18 12:18:28 -03:00
zoran_card.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
zoran_card.h V4L/DVB (7479): proper prototype for zoran_device.c:zr36016_write() 2008-04-24 14:07:57 -03:00
zoran_device.c V4L/DVB (7479): proper prototype for zoran_device.c:zr36016_write() 2008-04-24 14:07:57 -03:00
zoran_device.h
zoran_driver.c V4L/DVB (7402): add macro validation for v4l_compat_ioctl32 2008-04-24 14:07:53 -03:00
zoran_procfs.c V4L/DVB (5884): zr36067: clean up debug function 2007-10-09 22:02:57 -03:00
zoran_procfs.h
zr364xx.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
zr36016.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
zr36016.h
zr36050.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
zr36050.h
zr36057.h
zr36060.c V4L/DVB (7094): static memory 2008-04-24 13:42:20 -03:00
zr36060.h