]> git.baikalelectronics.ru Git - kernel.git/commit
ath9k: fix race condition in irq processing during hardware reset
authorFelix Fietkau <nbd@openwrt.org>
Wed, 14 Jan 2015 13:17:36 +0000 (14:17 +0100)
committerKalle Valo <kvalo@codeaurora.org>
Mon, 19 Jan 2015 12:32:29 +0000 (14:32 +0200)
commit2e22914633643a59d5db2b282b15f68f2cdde710
tree2fa9692b9e7a6c1bd78895f09154750480b0452a
parentf05ff19c6413184a10dedaf7205889390e19b824
ath9k: fix race condition in irq processing during hardware reset

To fix invalid hardware accesses, the commit 03f5c3a45991 ("ath9k: do not
access hardware on IRQs during reset") made the irq handler ignore interrupts
emitted after queueing a hardware reset (which disables the IRQ). This left a
small time window for the IRQ to get re-enabled by the tasklet, which caused
IRQ storms.  Instead of returning IRQ_NONE when ATH_OP_HW_RESET is set, disable
the IRQ entirely for the duration of the reset.

Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/ath/ath9k/main.c