wlcore: stop queues on Tx flush
authorArik Nemtsov <arik@wizery.com>
Fri, 18 May 2012 04:46:39 +0000 (07:46 +0300)
committerLuciano Coelho <coelho@ti.com>
Wed, 6 Jun 2012 16:28:05 +0000 (19:28 +0300)
commit2c38849f4a247673c8203a569444042e32d82410
tree86b41dd4670f9d1ffa9997cc43ca4565a5050c2b
parent6639611467f34038aa63c5cb9f8d9e48171d6022
wlcore: stop queues on Tx flush

Stop network queues during Tx flush, and also drop other internal
mac80211 packets (mgmt) that may arrive when the queues are stopped.

When flush is done all driver queues are clear, forcefully if needed.

Protect the Tx flush operation with a new mutex, to prevent concurrency
that can mess us queue state.

Based on a patch by Eliad Peller <eliad@wizery.com>

Signed-off-by: Arik Nemtsov <arik@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
drivers/net/wireless/ti/wlcore/main.c
drivers/net/wireless/ti/wlcore/tx.c
drivers/net/wireless/ti/wlcore/tx.h
drivers/net/wireless/ti/wlcore/wlcore.h