linux/drivers/net/wireless/ath
Luis R. Rodriguez 1e45028528 ath9k: add locking for stopping RX
ath9k locks for starting RX but not for stopping RX. We could
potentially run into a situation where tried to stop RX
but immediately started RX. This allows for races on the
the RX engine deciding what buffer we last left off on
and could potentially cause ath9k to DMA into already
free'd memory or in the worst case at a later time to
already given memory to other drivers.

Fix this by locking stopping RX.

This is part of a series that will help resolve the bug:

https://bugzilla.kernel.org/show_bug.cgi?id=14624

For more details about this issue refer to:

http://marc.info/?l=linux-wireless&m=128629803703756&w=2

Cc: stable@kernel.org
Cc: Ben Greear <greearb@candelatech.com>
Cc: Kyungwan Nam <kyungwan.nam@atheros.com>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Tested-by: Ben Greear <greearb@candelatech.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
2010-10-27 15:41:14 -04:00
..
ar9170 ar9170: Remove MODULE_FIRMWARE references to two-stage firmware 2010-10-05 13:35:22 -04:00
ath5k ath5k: Properly initialize ath_common->cc_lock. 2010-10-25 14:43:13 -04:00
ath9k ath9k: add locking for stopping RX 2010-10-27 15:41:14 -04:00
carl9170 carl9170: fix scheduling while atomic 2010-10-25 14:45:56 -04:00
ath.h ath9k_hw: move the cycle counter tracking to ath 2010-10-11 15:04:20 -04:00
debug.c ath5k: fix build break from "ath5k: Print out opmode in debugfs" 2010-10-12 16:05:30 -04:00
debug.h ath5k: fix build break from "ath5k: Print out opmode in debugfs" 2010-10-12 16:05:30 -04:00
hw.c ath9k_hw: move the cycle counter tracking to ath 2010-10-11 15:04:20 -04:00
Kconfig carl9170: Makefile, Kconfig files and MAINTAINERS 2010-09-14 16:03:42 -04:00
key.c ath/ath9k: Replace common->splitmic with a flag 2010-09-16 15:19:45 -04:00
main.c
Makefile ath: Copy key cache management functions from ath9k to ath 2010-09-16 15:19:45 -04:00
reg.h ath9k_hw: move the cycle counter tracking to ath 2010-10-11 15:04:20 -04:00
regd_common.h ath: Updates for regulatory and country codes. 2009-10-27 16:50:04 -04:00
regd.c drivers/net: Remove unnecessary returns from void function()s 2010-05-14 00:19:28 -07:00
regd.h ath9k_hw: fix parsing of HT40 5 GHz CTLs 2010-08-31 14:52:23 -04:00