ath9k: remove sc->rx.rxbuflock to fix a deadlock
authorFelix Fietkau <nbd@openwrt.org>
Mon, 14 Jan 2013 09:50:15 +0000 (10:50 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 4 Feb 2013 00:27:03 +0000 (18:27 -0600)
commite6dfa60488226d35f04b21f760cb17b05481ebe5
tree529ef9e2cafd59b360565cd62d15438094d6a034
parente945e4c38a922fba6b8780f53c2e45f604a624e6
ath9k: remove sc->rx.rxbuflock to fix a deadlock

commit 463e3ed3eacc8f47866e5d612bd8ee0bcee5e2f0 upstream.

The commit "ath9k: fix rx flush handling" added a deadlock that happens
because ath_rx_tasklet is called in a section that has already taken the
rx buffer lock.

It seems that the only purpose of the rxbuflock was a band-aid fix to the
reset vs rx tasklet race, which has been properly fixed in the commit
"ath9k: add a better fix for the rx tasklet vs rx flush race".

Now that the fix is in, we can safely remove the lock to avoid such issues.

Reported-by: Sujith Manoharan <c_manoha@qca.qualcomm.com>
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/wireless/ath/ath9k/ath9k.h
drivers/net/wireless/ath/ath9k/recv.c