summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath5k/base.h
diff options
context:
space:
mode:
authorJiri Slaby2008-08-18 21:45:27 +0200
committerJohn W. Linville2008-08-27 02:06:31 +0200
commit004829730cb1b03abe7555e1c1faadec62cbcf6f (patch)
tree414985c79061809ddfdd72ba138a5402b3cbe978 /drivers/net/wireless/ath5k/base.h
parentatmel: try open system authentication too (diff)
downloadkernel-qcow2-linux-004829730cb1b03abe7555e1c1faadec62cbcf6f.tar.gz
kernel-qcow2-linux-004829730cb1b03abe7555e1c1faadec62cbcf6f.tar.xz
kernel-qcow2-linux-004829730cb1b03abe7555e1c1faadec62cbcf6f.zip
Ath5k: lock beacons
Beacons setup and config was racy with beacon send. Ensure that ISR and reset functions see consistent state of bbuf. Use also dev_kfree_skb_any in ath5k_txbuf_free since we call it from atomic now. Signed-off-by: Jiri Slaby <jirislaby@gmail.com> Cc: Nick Kossifidis <mickflemm@gmail.com> Cc: Luis R. Rodriguez <mcgrof@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath5k/base.h')
-rw-r--r--drivers/net/wireless/ath5k/base.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/wireless/ath5k/base.h b/drivers/net/wireless/ath5k/base.h
index d7e03e6b8271..7ec2f377d5c7 100644
--- a/drivers/net/wireless/ath5k/base.h
+++ b/drivers/net/wireless/ath5k/base.h
@@ -172,6 +172,7 @@ struct ath5k_softc {
struct tasklet_struct txtq; /* tx intr tasklet */
struct ath5k_led tx_led; /* tx led */
+ spinlock_t block; /* protects beacon */
struct ath5k_buf *bbuf; /* beacon buffer */
unsigned int bhalq, /* SW q for outgoing beacons */
bmisscount, /* missed beacon transmits */