Use rt2x00queue_flush_queues() in rt2x00mac_flush() instead of reimplementing the same actions the second time. Also, now it flushes the rx queue aswell which it didn't before and that makes it completely do what it's supposed to do according to struct iee80211_ops: flush() must flush all queues. Signed-off-by: Giedrius Statkevičius <giedrius.statkevicius@xxxxxxxxx> --- drivers/net/wireless/rt2x00/rt2x00mac.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/drivers/net/wireless/rt2x00/rt2x00mac.c b/drivers/net/wireless/rt2x00/rt2x00mac.c index 300876d..5bc48c3 100644 --- a/drivers/net/wireless/rt2x00/rt2x00mac.c +++ b/drivers/net/wireless/rt2x00/rt2x00mac.c @@ -756,13 +756,11 @@ void rt2x00mac_flush(struct ieee80211_hw *hw, struct ieee80211_vif *vif, u32 queues, bool drop) { struct rt2x00_dev *rt2x00dev = hw->priv; - struct data_queue *queue; if (!test_bit(DEVICE_STATE_PRESENT, &rt2x00dev->flags)) return; - tx_queue_for_each(rt2x00dev, queue) - rt2x00queue_flush_queue(queue, drop); + rt2x00queue_flush_queues(rt2x00dev, drop); } EXPORT_SYMBOL_GPL(rt2x00mac_flush); -- 2.3.1 -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html