wlcore: take the mutex before resetting Tx queues

Otherwise we risk contention for private members of our global structure
while op_stop_locked is running.

Reported-by: Ido Yariv <ido@wizery.com>
Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
This commit is contained in:
Arik Nemtsov 2012-11-27 08:44:53 +02:00 committed by Luciano Coelho
parent 4c14518517
commit d935e385f8

View File

@ -1852,8 +1852,8 @@ static void wlcore_op_stop_locked(struct wl1271 *wl)
cancel_delayed_work_sync(&wl->tx_watchdog_work);
/* let's notify MAC80211 about the remaining pending TX frames */
wl12xx_tx_reset(wl);
mutex_lock(&wl->mutex);
wl12xx_tx_reset(wl);
wl1271_power_off(wl);
/*