mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 16:54:27 +00:00
![]() My brain-damaged adjustments to Paul's patch caused crashes in
gpio_keys_disable_button() when driver is used in GPIO-less (i.e.
purely interrupt-driven) setups, because I mixed together debounce and
release timers when they are in fact separate:
Unable to handle kernel NULL pointer dereference at virtual address 0000000c
...
PC is at hrtimer_active+0xc/0x98
LR is at hrtimer_try_to_cancel+0x24/0x140
...
[<c01c43b8>] (hrtimer_active) from [<c01c50f4>] (hrtimer_try_to_cancel+0x24/0x140)
[<c01c50f4>] (hrtimer_try_to_cancel) from [<c01c5224>] (hrtimer_cancel+0x14/0x4c)
[<c01c5224>] (hrtimer_cancel) from [<bf1cae24>] (gpio_keys_attr_store_helper+0x1b8/0x1d8 [gpio_keys])
[<bf1cae24>] (gpio_keys_attr_store_helper [gpio_keys]) from [<bf1cae80>] (gpio_keys_store_disabled_keys+0x18/0x24 [gpio_keys])
[<bf1cae80>] (gpio_keys_store_disabled_keys [gpio_keys]) from [<c038ec7c>] (kernfs_fop_write_iter+0x10c/0x1cc)
[<c038ec7c>] (kernfs_fop_write_iter) from [<c02df858>] (vfs_write+0x2ac/0x404)
[<c02df858>] (vfs_write) from [<c02dfaf4>] (ksys_write+0x64/0xdc)
[<c02dfaf4>] (ksys_write) from [<c0100080>] (ret_fast_syscall+0x0/0x58)
Let's fix it up.
Fixes:
|
||
---|---|---|
.. | ||
adc-keys.c | ||
adp5520-keys.c | ||
adp5588-keys.c | ||
adp5589-keys.c | ||
amikbd.c | ||
applespi.c | ||
applespi.h | ||
applespi_trace.h | ||
atakbd.c | ||
atkbd.c | ||
bcm-keypad.c | ||
cap11xx.c | ||
clps711x-keypad.c | ||
cros_ec_keyb.c | ||
davinci_keyscan.c | ||
dlink-dir685-touchkeys.c | ||
ep93xx_keypad.c | ||
goldfish_events.c | ||
gpio_keys.c | ||
gpio_keys_polled.c | ||
hil_kbd.c | ||
hilkbd.c | ||
hpps2atkbd.h | ||
imx_keypad.c | ||
imx_sc_key.c | ||
ipaq-micro-keys.c | ||
iqs62x-keys.c | ||
jornada680_kbd.c | ||
jornada720_kbd.c | ||
Kconfig | ||
lkkbd.c | ||
lm8323.c | ||
lm8333.c | ||
locomokbd.c | ||
lpc32xx-keys.c | ||
Makefile | ||
maple_keyb.c | ||
matrix_keypad.c | ||
max7359_keypad.c | ||
mcs_touchkey.c | ||
mpr121_touchkey.c | ||
mtk-pmic-keys.c | ||
newtonkbd.c | ||
nomadik-ske-keypad.c | ||
nspire-keypad.c | ||
omap-keypad.c | ||
omap4-keypad.c | ||
opencores-kbd.c | ||
pmic8xxx-keypad.c | ||
pxa27x_keypad.c | ||
pxa930_rotary.c | ||
qt1050.c | ||
qt1070.c | ||
qt2160.c | ||
samsung-keypad.c | ||
sh_keysc.c | ||
snvs_pwrkey.c | ||
spear-keyboard.c | ||
st-keyscan.c | ||
stmpe-keypad.c | ||
stowaway.c | ||
sun4i-lradc-keys.c | ||
sunkbd.c | ||
tc3589x-keypad.c | ||
tca6416-keypad.c | ||
tca8418_keypad.c | ||
tegra-kbc.c | ||
tm2-touchkey.c | ||
twl4030_keypad.c | ||
xtkbd.c |