linux/drivers/input/touchscreen
Florian Echtler c2529908a1 [media] sur40: fix occasional hard freeze due to buffer queue underrun
This patch fixes a kernel panic which occurs when buf_list is empty. This can
happen occasionally when user space is under heavy load (e.g. due to image
processing on the CPU) and new buffers aren't re-queued fast enough. In that
case, vb2_start_streaming_called can return true, but when the spinlock
is taken and sur40_poll attempts to fetch the next buffer from buf_list, the
list is in fact empty.

This patch needs to be applied on top of the queued one adding V4L2 support
to the sur40 driver.

Signed-off-by: Florian Echtler <floe@butterbrot.org>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
2015-04-08 06:28:56 -03:00
..
88pm860x-ts.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
ad7877.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
ad7879-i2c.c Input: remove use of __devexit 2012-11-24 00:05:38 -08:00
ad7879-spi.c Input: ad7879-spi - remove redundant spi_set_drvdata 2013-09-20 09:58:29 -07:00
ad7879.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2014-12-17 10:06:02 -08:00
ad7879.h Input: ad7879 - consolidate PM methods 2011-11-15 22:24:22 -08:00
ads7846.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
ar1021_i2c.c Input: Add Microchip AR1021 i2c touchscreen 2014-10-09 15:27:42 -07:00
atmel_mxt_ts.c Revert "Input: atmel_mxt_ts - use deep sleep mode when stopped" 2014-12-31 12:59:34 -08:00
atmel-wm97xx.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
auo-pixcir-ts.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
bu21013_ts.c Input: bu21013_ts - add support for Device Tree booting 2012-11-27 23:05:19 -08:00
cy8ctmg110_ts.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
cyttsp4_core.c input / PM: Replace CONFIG_PM_RUNTIME with CONFIG_PM 2014-12-05 02:54:17 +01:00
cyttsp4_core.h Input: cyttsp4 - use 16bit address for I2C/SPI communication 2013-07-06 21:57:06 -07:00
cyttsp4_i2c.c Input: cyttsp4 - I2C driver for Cypress TMA4XX touchscreen devices 2013-06-30 21:24:24 -07:00
cyttsp4_spi.c Input: cyttsp4 - replace IS_ERR and PTR_ERR with PTR_ERR_OR_ZERO 2013-11-11 00:01:45 -08:00
cyttsp_core.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
cyttsp_core.h Input: cyttsp4 - use 16bit address for I2C/SPI communication 2013-07-06 21:57:06 -07:00
cyttsp_i2c_common.c Input: cyttsp - include appropriate header file in cyttsp_i2c_common.c 2013-12-15 02:54:04 -08:00
cyttsp_i2c.c Input: cyttsp - I2C driver split into two modules 2013-06-30 21:24:16 -07:00
cyttsp_spi.c Input: cyttsp4 - use 16bit address for I2C/SPI communication 2013-07-06 21:57:06 -07:00
da9034-ts.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
da9052_tsi.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
dynapro.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
edt-ft5x06.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2014-12-30 16:59:59 -08:00
eeti_ts.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
egalax_ts.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
elants_i2c.c Input: elants_i2c - remove unnecessary version.h inclusion 2014-12-29 14:08:59 -08:00
elo.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
fujitsu_ts.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
goodix.c Input: add driver for the Goodix touchpanel 2014-10-31 09:41:23 -07:00
gunze.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
hampshire.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
hp680_ts_input.c Input: hp680_ts_input - ensure arguments to request_irq and free_irq are compatible 2012-03-12 22:17:56 -07:00
htcpen.c Input: htcpen - remove redundant dev_set_drvdata 2013-09-18 07:53:30 -07:00
ili210x.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
inexio.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
intel-mid-touch.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
ipaq-micro-ts.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
jornada720_ts.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
Kconfig [media] add raw video stream support for Samsung SUR40 2015-04-02 21:16:03 -03:00
lpc32xx_ts.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
mainstone-wm97xx.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
Makefile Input: add support for Elan eKTH I2C touchscreens 2014-12-07 23:09:23 -08:00
max11801_ts.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
mc13783_ts.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
mcs5000_ts.c Input: mcs5000_ts - remove ifdef around power management methods 2014-07-30 22:52:56 -07:00
migor_ts.c Input: convert I2C drivers to use module_i2c_driver() 2012-03-16 23:06:19 -07:00
mk712.c Update broken web addresses in the kernel. 2010-10-18 11:03:14 +02:00
mms114.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
mtouch.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
of_touchscreen.c Input: add common DT binding for touchscreens 2014-05-29 00:05:59 -07:00
pcap_ts.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
penmount.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
pixcir_i2c_ts.c Input: MT - add support for balanced slot assignment 2015-02-01 11:50:35 -08:00
s3c2410_ts.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
st1232.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
stmpe-ts.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
sun4i-ts.c Input: sun4i-ts - add support for touchpanel controller on A31 2015-01-26 23:58:56 -08:00
sur40.c [media] sur40: fix occasional hard freeze due to buffer queue underrun 2015-04-08 06:28:56 -03:00
ti_am335x_tsc.c Input: ti_am335x_tsc - replace delta filtering with median filtering 2015-02-03 11:50:39 -08:00
touchit213.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
touchright.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
touchwin.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
tps6507x-ts.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
tsc40.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
tsc2005.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
tsc2007.c Input: tsc2007 - convert to use devres-managed resources 2013-11-25 18:27:56 -08:00
ucb1400_ts.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2014-12-17 10:06:02 -08:00
usbtouchscreen.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
w90p910_ts.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
wacom_i2c.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
wacom_w8001.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00
wm97xx-core.c Input: wm97xx - adapt parameters to tosa touchscreen. 2014-10-24 17:27:31 -07:00
wm831x-ts.c input: touchscreen: drop owner assignment from platform_drivers 2014-10-20 16:20:41 +02:00
wm9705.c Input: wm97xx - mark channels which need pen_down 2011-07-04 19:31:47 -07:00
wm9712.c Input: wm971x - fix typo in module parameter description 2014-09-09 16:52:09 -07:00
wm9713.c Input: wm971x - fix typo in module parameter description 2014-09-09 16:52:09 -07:00
zforce_ts.c Input: touchscreen - use __maybe_unused instead of ifdef around suspend/resume 2014-11-02 00:10:07 -07:00
zylonite-wm97xx.c Input: delete non-required instances of include <linux/init.h> 2014-01-06 23:23:57 -08:00