linux/drivers/media
Rafael J. Wysocki 9c016d6109 Partly revert "[media] uvcvideo: Set error_idx properly for extended controls API failures"
Commit f0ed2ce840 ("[media] uvcvideo: Set error_idx properly for
extended controls API failures") causes user space to behave incorrectly
on one of my test machines (there is no sound under KDE 4.9.4 using
pulseaudio and there is a knotify4 process occupying one of the CPU
cores 100% of the time).  Reverting that commit entirely fixes the
problem for me.

However, commit f0ed2ce840 appears to do more than it follows from its
changelog, because the changelog only says about the changes related to
ctrls->error_idx, while the commit additionally changes error codes
returned by various functions in uvc_ctrl.c and uvc_v4l2.c.  It turns
out that the changes of the returned error codes confuse the user spce,
so it is sufficient to revert the part of commit f0ed2ce840 not
mentioned in its changelog to fix the problem.

[ 'ENOENT' is not a valid error return from an ioctl to begin with, and
  I don't understand how anybody ever even thought it would be.  - Linus ]

Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Mauro Carvalho Chehab <mchehab@redhat.com>
Cc: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-12-23 09:39:14 -08:00
..
common [media] siano: fix build with allmodconfig 2012-11-23 13:48:39 -02:00
dvb-core [media] rtl28xxu: add NOXON DAB/DAB+ USB dongle rev 2 2012-11-28 09:51:22 -02:00
dvb-frontends Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media 2012-12-13 19:22:22 -08:00
firewire [media] remove include/linux/dvb/dmx.h 2012-10-19 07:29:17 -03:00
i2c Merge remote-tracking branch 'linus/master' into staging/for_v3.8 2012-11-28 07:22:38 -02:00
mmc [media] siano: fix RC compilation 2012-11-07 11:09:08 +01:00
parport [media] Add missing help for some menuconfig items 2012-08-21 08:17:37 -03:00
pci [media] cx25821: Replace kmemdup for kstrdup and clean up 2012-11-22 16:46:56 -02:00
platform fbdev changes for 3.8: 2012-12-15 13:03:48 -08:00
radio [media] drivers/media/radio/radio-cadet.c: fix error return code 2012-11-22 14:20:34 -02:00
rc Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media 2012-12-13 19:22:22 -08:00
tuners [media] fc2580: write some registers conditionally 2012-11-28 09:47:56 -02:00
usb Partly revert "[media] uvcvideo: Set error_idx properly for extended controls API failures" 2012-12-23 09:39:14 -08:00
v4l2-core Revert "videobuf2-dma-contig: Only support if HAVE_GENERIC_DMA_COHERENT" 2012-11-27 09:35:02 -02:00
Kconfig [media] Kconfig: Fix dependencies for driver autoselect options 2012-10-17 16:45:56 -03:00
Makefile [media] move i2c files into drivers/media/i2c 2012-09-06 18:42:54 -03:00
media-device.c [media] media: fix MEDIA_IOC_DEVICE_INFO return code 2012-08-12 07:57:57 -03:00
media-devnode.c [media] media-devnode: Replace printk with pr_* 2012-09-27 14:19:23 -03:00
media-entity.c [media] media: Add link_validate() op to check links to the sink pad 2012-05-14 08:44:11 -03:00