mirror of
https://github.com/torvalds/linux.git
synced 2024-11-07 12:41:55 +00:00
1cef8e4107
The TWL4030 IRQ handler has a bug which leads to spinlock lock-up. It is calling the 'unmask' function in a process context. :The mask/unmask/ack functions are only designed to be called from the IRQ handler code, or the proper API interfaces found in linux/interrupt.h. Also there is no need to have IRQ chaining mechanism. The right way to handle this is to claim the parent interrupt as a standard interrupt and arrange for handle_twl4030_pih to take care of the rest of the devices. Mail thread on this issue can be found at: http://marc.info/?l=linux-arm-kernel&m=124629940123396&w=2 Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Tested-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com> |
||
---|---|---|
.. | ||
ab3100-core.c | ||
asic3.c | ||
da903x.c | ||
dm355evm_msp.c | ||
ezx-pcap.c | ||
htc-egpio.c | ||
htc-pasic3.c | ||
Kconfig | ||
Makefile | ||
mcp-core.c | ||
mcp-sa11x0.c | ||
mcp.h | ||
menelaus.c | ||
mfd-core.c | ||
pcf50633-adc.c | ||
pcf50633-core.c | ||
pcf50633-gpio.c | ||
sm501.c | ||
t7l66xb.c | ||
tc6387xb.c | ||
tc6393xb.c | ||
tps65010.c | ||
twl4030-core.c | ||
twl4030-irq.c | ||
ucb1x00-assabet.c | ||
ucb1x00-core.c | ||
ucb1x00-ts.c | ||
ucb1x00.h | ||
ucb1400_core.c | ||
wm8350-core.c | ||
wm8350-gpio.c | ||
wm8350-i2c.c | ||
wm8350-regmap.c | ||
wm8400-core.c |