aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/rt2x00/rt2x00dev.c
diff options
context:
space:
mode:
authorIvo van Doorn <IvDoorn@gmail.com>2011-01-30 07:23:42 -0500
committerJohn W. Linville <linville@tuxdriver.com>2011-01-31 15:06:25 -0500
commite1f4e808bb7a884d6563553c2c94cbdd901a16c7 (patch)
tree154b1ed060f6b475adce7df2f29065dcbca0c14d /drivers/net/wireless/rt2x00/rt2x00dev.c
parenta0aff623ca8bc8779e6c3a394772d70d8a65dee9 (diff)
rt2x00: Kill all tasklets during device removal
During device removal all pending work and tasklets must be guaranteed to be halted. So far only the txstatus_tasklet was killed. Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com> Acked-by: Helmut Schaa <helmut.schaa@googlemail.com> Acked-by: Gertjan van Wingerde <gwingerde@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00dev.c')
-rw-r--r--drivers/net/wireless/rt2x00/rt2x00dev.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00dev.c b/drivers/net/wireless/rt2x00/rt2x00dev.c
index 5812a4e05c7f..e7162852ec34 100644
--- a/drivers/net/wireless/rt2x00/rt2x00dev.c
+++ b/drivers/net/wireless/rt2x00/rt2x00dev.c
@@ -1067,6 +1067,10 @@ void rt2x00lib_remove_dev(struct rt2x00_dev *rt2x00dev)
1067 * Kill the tx status tasklet. 1067 * Kill the tx status tasklet.
1068 */ 1068 */
1069 tasklet_kill(&rt2x00dev->txstatus_tasklet); 1069 tasklet_kill(&rt2x00dev->txstatus_tasklet);
1070 tasklet_kill(&rt2x00dev->pretbtt_tasklet);
1071 tasklet_kill(&rt2x00dev->tbtt_tasklet);
1072 tasklet_kill(&rt2x00dev->rxdone_tasklet);
1073 tasklet_kill(&rt2x00dev->autowake_tasklet);
1070 1074
1071 /* 1075 /*
1072 * Uninitialize device. 1076 * Uninitialize device.