iwlwifi: mvm: don't send BAR on flushed frames
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Sun, 6 Aug 2017 10:19:05 +0000 (13:19 +0300)
committerLuca Coelho <luciano.coelho@intel.com>
Fri, 18 Aug 2017 13:10:44 +0000 (16:10 +0300)
commit114db230d35442e6d3382adc8ac34c944b5cd0eb
tree3ab6f521965a043f21e99da318c7e23071f9e8f4
parent3edfb5f44b942f04b4fbbddb24d8866bbfb5d1a4
iwlwifi: mvm: don't send BAR on flushed frames

When we flush a queue, the packets will have a 'failed'
status but we shouldn't send a BAR. This check was missing.
Because of that, when we got an ampdu_action with
IEEE80211_AMPDU_TX_STOP_FLUSH, we started the following
ping pong with the firmware:

1) Set the station as 'draining'
2) Get a failed Tx status (DRAINED)
3) Send a BAR because of the failed Tx status

(loop of 2 and 3)

This loop wasn't endless since the BAR isn't sent on a
queue that would trigger a "nested" BAR.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
drivers/net/wireless/intel/iwlwifi/mvm/tx.c