linux-stable/drivers/media/video
Paul Cassella 7fd4b41f05 [media] ivtv: yuv: handle get_user_pages() -errno returns
get_user_pages() may return -errno, such as -EFAULT.  So don't blindly use
its return value as an offset into dma->map[] for the next get_user_pages()
call.  Since we'll give up and return an error if either fails, don't even
make the second call if the first failed to give us exactly what we were
looking for.

The old code would also call put_page() on as many elements of dma->map[]
as we'd asked for, regardless of how many were valid.

[Andy Walls modified this patch to return -EFAULT instead of -EINVAL
as Paul's observation "I'm not sure -EINVAL is the best return code vs
-EFAULT or -ENOMEM, [...]" was correct.  The return value bubbles up
as a return code for write(), for which the V4L2 API spec indicates
EINVAL is incorrect and EFAULT is correct.]

Signed-off-by: Paul Cassella <fortytwo-ivtv@maneteren.bigw.org>
Signed-off-by: Andy Walls <awalls@md.metrocast.net>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-03-21 20:32:35 -03:00
..
au0828 [media] tuner-core: remove usage of DIGITAL_TV 2011-03-21 20:32:03 -03:00
bt8xx [media] tuner-core: remove usage of DIGITAL_TV 2011-03-21 20:32:03 -03:00
cpia2 [media] cpia2: convert to video_ioctl2 2011-03-21 20:31:51 -03:00
cx18 [media] cx18: fix kernel oops when setting MPEG control before capturing 2011-03-21 20:32:19 -03:00
cx88 [media] cx88: add support for TeVii S464 PCI card 2011-03-21 20:32:27 -03:00
cx231xx [media] video/cx231xx: Fix sparse warning: Using plain integer as NULL pointer 2011-03-21 20:32:16 -03:00
cx23885 [media] cx23885, altera-ci: enable all PID's less than 0x20 in hardware PID filter 2011-03-21 20:32:18 -03:00
cx25840 [media] cx25840: fix probing of cx2583x chips 2011-03-02 13:45:33 -03:00
davinci [media] davinci: convert vpif_display to core-assisted locking 2011-01-19 11:28:21 -02:00
em28xx [media] em28xx: properly handle subdev controls 2011-03-21 20:32:04 -03:00
et61x251 [media] et61x251: remove wrongly claimed usb ids 2011-01-19 11:45:01 -02:00
gspca [media] gspca_cpia1: Don't allow the framerate divisor to go above 2 2011-03-21 20:32:11 -03:00
hdpvr [media] hdpvr: fix up i2c device registration 2011-01-31 12:18:04 -02:00
ivtv [media] ivtv: yuv: handle get_user_pages() -errno returns 2011-03-21 20:32:35 -03:00
omap Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2011-01-13 10:05:56 -08:00
pvrusb2 [media] pvrusb2: Use sysfs_attr_init() where appropriate 2011-03-21 20:32:22 -03:00
pwc [media] pwc: convert to video_ioctl2 2011-03-21 20:31:51 -03:00
s5p-fimc [media] s5p-fimc: fimc_stop_capture bug fix 2011-03-21 20:31:40 -03:00
saa7134 [media] saa7134-empress: add missing MPEG controls 2011-03-21 20:32:12 -03:00
saa7164 [media] video/saa7164: Fix sparse warning: Using plain integer as NULL pointer 2011-03-21 20:32:19 -03:00
sn9c102 [media] video: sn9c102: world-wirtable sysfs files 2011-03-21 20:32:21 -03:00
tlg2300 [media] media, tlg2300: Fix memory leak in alloc_bulk_urbs_generic() 2011-01-19 11:45:45 -02:00
usbvision [media] usbvision: coding style 2010-12-30 08:02:09 -02:00
uvc [media] V4L: remove V4L1 compatibility mode 2010-12-29 08:17:07 -02:00
zoran [media] zoran: use video_device_alloc instead of kmalloc 2011-01-19 11:52:12 -02:00
adv7170.c V4L/DVB: adv7170: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:06:04 -02:00
adv7175.c [media] adv7175: support s_power 2011-01-19 11:45:55 -02:00
adv7180.c V4L/DVB: v4l: remove unused i2c-id.h headers 2010-10-21 01:06:05 -02:00
adv7343.c [media] adv7343: use control framework 2011-03-21 20:31:49 -03:00
adv7343_regs.h [media] adv7343: use control framework 2011-03-21 20:31:49 -03:00
ak881x.c V4L/DVB: mediabus: fix ambiguous pixel code names 2010-08-02 16:43:36 -03:00
arv.c [media] BKL: trivial ioctl -> unlocked_ioctl video driver conversions 2010-12-01 20:10:10 -02:00
bt819.c [media] bt819: use control framework 2011-03-21 20:31:49 -03:00
bt856.c V4L/DVB: bt856: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:06:02 -02:00
bt866.c V4L/DVB: bt866: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:06:00 -02:00
btcx-risc.c
btcx-risc.h
bw-qcam.c [media] BKL: trivial ioctl -> unlocked_ioctl video driver conversions 2010-12-01 20:10:10 -02:00
c-qcam.c [media] BKL: trivial ioctl -> unlocked_ioctl video driver conversions 2010-12-01 20:10:10 -02:00
cafe_ccic-regs.h
cafe_ccic.c [media] v4l2-subdev: remove core.s_config and v4l2_i2c_new_subdev_cfg() 2011-01-19 11:45:30 -02:00
cs53l32a.c V4L/DVB: cs53l32a: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:06:03 -02:00
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] fsl_viu: add VIDIOC_QUERYSTD and VIDIOC_G_STD support 2010-12-29 08:17:16 -02:00
hexium_gemini.c [media] v4l: fix handling of v4l2_input.capabilities 2010-12-30 08:02:29 -02:00
hexium_orion.c [media] v4l: fix handling of v4l2_input.capabilities 2010-12-30 08:02:29 -02:00
ibmmpeg2.h
imx074.c [media] i2c: Remove obsolete cleanup for clientdata 2010-12-29 08:16:47 -02:00
indycam.c V4L/DVB: indycam: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:05:59 -02:00
indycam.h
ir-kbd-i2c.c [media] ir-kbd-i2c: improve remote behavior with z8 behind usb 2011-01-31 12:19:15 -02:00
Kconfig [media] V4L: Initial submit of OV9740 driver 2011-03-21 20:32:16 -03:00
ks0127.c V4L/DVB: ks0127: remove obsolete v4l2_i2c_drv.h header 2010-10-21 01:06:04 -02:00
ks0127.h
m52790.c V4L/DVB: m52790: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:05:59 -02:00
Makefile [media] V4L: Initial submit of OV9740 driver 2011-03-21 20:32:16 -03:00
mem2mem_testdev.c [media] v4l: mem2mem: port m2m_testdev to vb2 2011-03-21 20:31:35 -03:00
meye.c [media] BKL: trivial ioctl -> unlocked_ioctl video driver conversions 2010-12-01 20:10:10 -02:00
meye.h
msp3400-driver.c [media] msp3400: fix mute audio regression 2010-10-21 08:56:41 -02:00
msp3400-driver.h V4L/DVB: msp3400: convert to the new control framework 2010-08-08 23:43:04 -03:00
msp3400-kthreads.c V4L/DVB: msp3400: convert to the new control framework 2010-08-08 23:43:04 -03:00
mt9m001.c [media] media: video: do not clear 'driver' from an i2c_client 2010-12-29 08:16:47 -02:00
mt9m111.c [media] media: video: do not clear 'driver' from an i2c_client 2010-12-29 08:16:47 -02:00
mt9t031.c [media] media: video: do not clear 'driver' from an i2c_client 2010-12-29 08:16:47 -02:00
mt9t112.c V4L/DVB: v4l: Use v4l2_get_subdevdata instead of accessing v4l2_subdev::priv 2010-10-21 01:04:51 -02:00
mt9v011.c [media] v4l2-subdev: remove core.s_config and v4l2_i2c_new_subdev_cfg() 2011-01-19 11:45:30 -02:00
mt9v022.c [media] media: video: do not clear 'driver' from an i2c_client 2010-12-29 08:16:47 -02:00
mx1_camera.c [media] v4l: soc-camera: switch to .unlocked_ioctl 2010-12-30 22:29:26 -02:00
mx2_camera.c [media] v4l: soc-camera: switch to .unlocked_ioctl 2010-12-30 22:29:26 -02:00
mx3_camera.c [media] V4L: mx3_camera: convert to videobuf2 2011-03-21 20:32:15 -03:00
mxb.c [media] v4l: fix handling of v4l2_input.capabilities 2010-12-30 08:02:29 -02:00
mxb.h
noon010pc30.c [media] Add v4l2 subdev driver for NOON010PC30L image sensor 2011-03-21 20:31:40 -03:00
omap1_camera.c [media] V4L: omap1_camera: join split format lines 2011-03-21 20:32:14 -03:00
omap24xxcam-dma.c
omap24xxcam.c [media] omap24xxcam: Fix compilation 2011-03-21 20:32:19 -03:00
omap24xxcam.h
ov772x.c [media] v4l: ov772x: simplify pointer dereference 2010-12-30 22:29:23 -02:00
ov2640.c [media] V4L2: Add a v4l2-subdev (soc-camera) driver for OmniVision OV2640 sensor 2010-12-30 22:29:34 -02:00
ov6650.c i2c: Remove obsolete cleanup for clientdata 2010-11-15 22:40:38 +01:00
ov7670.c [media] v4l2-subdev: remove core.s_config and v4l2_i2c_new_subdev_cfg() 2011-01-19 11:45:30 -02:00
ov7670.h [media] ov7670: allow configuration of image size, clock speed, and I/O method 2010-10-23 13:09:23 -02:00
ov9640.c [media] ov9640: fix OmniVision OV9640 sensor driver's priv data retrieving 2010-12-30 22:29:21 -02:00
ov9640.h
ov9740.c [media] V4L: Initial submit of OV9740 driver 2011-03-21 20:32:16 -03:00
pms.c [media] BKL: trivial ioctl -> unlocked_ioctl video driver conversions 2010-12-01 20:10:10 -02:00
pxa_camera.c [media] v4l: soc-camera: switch to .unlocked_ioctl 2010-12-30 22:29:26 -02:00
rj54n1cb0c.c [media] media: video: do not clear 'driver' from an i2c_client 2010-12-29 08:16:47 -02:00
s2255drv.c [media] s2255drv: firmware re-loading changes 2011-02-02 11:13:37 -02:00
saa711x_regs.h
saa717x.c V4L/DVB: saa717x: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:05:58 -02:00
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] fix saa7111 non-detection 2011-01-31 14:19:50 -02:00
saa7121.h
saa7127.c V4L/DVB: saa7127: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:06:04 -02:00
saa7146.h
saa7146reg.h
saa7185.c V4L/DVB: saa7185: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:05:59 -02:00
saa7191.c V4L/DVB: saa7191: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:06:02 -02:00
saa7191.h
sh_mobile_ceu_camera.c [media] V4l: sh_mobile_ceu_camera: fix cropping offset calculation 2011-03-21 20:32:15 -03:00
sh_mobile_csi2.c V4L/DVB: V4L2: soc-camera: add a MIPI CSI-2 driver for SH-Mobile platforms 2010-08-02 16:43:39 -03:00
sh_vou.c Merge branch 'bkl_removal' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 2010-12-17 09:28:17 -08:00
soc_camera.c [media] V4L: soc-camera: extend to also support videobuf2 2011-03-21 20:32:15 -03:00
soc_camera_platform.c
soc_mediabus.c [media] V4L: soc_mediabus: add a method to obtain the number of samples per pixel 2011-03-21 20:32:13 -03:00
sr030pc30.c [media] v4l2-subdev: remove core.s_config and v4l2_i2c_new_subdev_cfg() 2011-01-19 11:45:30 -02:00
stk-sensor.c
stk-webcam.c [media] stk-webcam: remove V4L1 compatibility code, replace with V4L2 controls 2010-12-29 08:17:09 -02:00
stk-webcam.h
tcm825x.c
tcm825x.h
tda7432.c V4L/DVB: tda7432: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:06:03 -02:00
tda9840.c V4L/DVB: tda9840: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:05:58 -02:00
tea6415c.c [media] tea6415c: return -EIO if i2c_check_functionality fails 2010-12-29 08:16:39 -02:00
tea6415c.h
tea6420.c V4L/DVB: tea6420: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:06:03 -02:00
tea6420.h
ths7303.c
timblogiw.c [media] timblogiw: fix compile warning 2010-12-30 08:02:35 -02:00
tlv320aic23b.c [media] tlv320aic23b: use control framework 2011-03-21 20:31:50 -03:00
tuner-core.c [media] tuner-core: Don't touch at standby during tuner_lookup 2011-03-21 20:32:03 -03:00
tvaudio.c V4L/DVB: tvaudio: remove obsolete tda8425 initialization 2010-10-21 01:06:09 -02:00
tveeprom.c
tvp514x.c [media] tvp514x: use the control framework 2011-03-21 20:31:50 -03:00
tvp514x_regs.h
tvp5150.c [media] tvp5150: device detection should be done only once 2011-03-21 20:32:04 -03:00
tvp5150_reg.h
tvp7002.c [media] tvp7002: use control framework 2011-03-21 20:31:50 -03:00
tvp7002_reg.h
tw9910.c V4L/DVB: v4l: Use v4l2_get_subdevdata instead of accessing v4l2_subdev::priv 2010-10-21 01:04:51 -02:00
upd64031a.c V4L/DVB: upd64031a: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:05:58 -02:00
upd64083.c V4L/DVB: upd64083: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:06:03 -02:00
v4l2-common.c [media] v4l: removal of old, obsolete ioctls 2011-03-21 20:32:12 -03:00
v4l2-compat-ioctl32.c [media] v4l: removal of old, obsolete ioctls 2011-03-21 20:32:12 -03:00
v4l2-ctrls.c [media] v4l2-ctrls: Fix control enumeration for multiple subdevs with ctrl 2011-03-21 20:32:04 -03:00
v4l2-dev.c [media] v4l2-dev: don't memset video_device.dev 2011-01-19 11:52:13 -02:00
v4l2-device.c [media] v4l2-device: fix 'use-after-freed' oops 2011-01-19 11:52:14 -02:00
v4l2-event.c V4L/DVB: v4l2: add core serialization lock 2010-10-21 01:06:14 -02:00
v4l2-fh.c
v4l2-int-device.c
v4l2-ioctl.c [media] v4l: removal of old, obsolete ioctls 2011-03-21 20:32:12 -03:00
v4l2-mem2mem.c [media] v4l: mem2mem: port to videobuf2 2011-03-21 20:31:35 -03:00
via-camera.c Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2011-01-13 10:05:56 -08:00
via-camera.h [media] Add the via framebuffer camera controller driver 2010-10-21 13:45:28 -02:00
videobuf-core.c [media] V4L: remove V4L1 compatibility mode 2010-12-29 08:17:07 -02:00
videobuf-dma-contig.c [media] v4l: videobuf: remove unused is_userptr variable 2010-10-21 07:55:56 -02:00
videobuf-dma-sg.c [media] videobuf-dma-sg: remove obsolete comments 2010-12-29 08:17:07 -02:00
videobuf-dvb.c V4L/DVB: videobuf: add queue argument to videobuf_waiton() 2010-10-21 01:06:14 -02:00
videobuf-vmalloc.c V4L/DVB: videobuf: add ext_lock argument to the queue init functions 2010-10-21 01:06:14 -02:00
videobuf2-core.c [media] vb2 core: Fix a few printk warnings 2011-03-21 20:31:34 -03:00
videobuf2-dma-contig.c [media] v4l: videobuf2: add DMA coherent allocator 2011-03-21 20:31:34 -03:00
videobuf2-dma-sg.c [media] v4l: videobuf2: add DMA scatter/gather allocator 2011-03-21 20:31:34 -03:00
videobuf2-memops.c [media] V4L: add missing EXPORT_SYMBOL* statements to vb2 2011-03-21 20:32:14 -03:00
videobuf2-vmalloc.c [media] v4l: videobuf2: add vmalloc allocator 2011-03-21 20:31:34 -03:00
vino.c [media] v4l: fix handling of v4l2_input.capabilities 2010-12-30 08:02:29 -02:00
vino.h
vivi.c [media] vivi: fix compiler warning 2011-03-21 20:31:51 -03:00
vp27smpx.c V4L/DVB: vp27smpx: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:05:57 -02:00
vpx3220.c [media] vpx3220: use control framework 2011-03-21 20:31:50 -03:00
w9966.c [media] w9966: zero device state after a detach 2011-01-19 11:52:11 -02:00
wm8739.c V4L/DVB: wm8739: remove obsolete v4l2-i2c-drv.h header 2010-10-21 01:05:57 -02:00
wm8775.c [media] Add proper audio support for Nova-S Plus with wm8775 ADC 2011-03-21 20:32:19 -03:00
zr364xx.c V4L/DVB: videobuf: add ext_lock argument to the queue init functions 2010-10-21 01:06:14 -02:00