iwlwifi: mvm: take the seqno from packet if transmit failed
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Thu, 13 Jun 2013 07:07:47 +0000 (10:07 +0300)
committerJohannes Berg <johannes.berg@intel.com>
Thu, 13 Jun 2013 14:43:03 +0000 (16:43 +0200)
The fw is unreliable in all the cases in which the packet
wasn't sent.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
drivers/net/wireless/iwlwifi/mvm/tx.c

index a830eb6cc411e7c75476d687cf827ddc721f2d47..72fc580f8d71737daecc838053a2a3f0b6b4bec4 100644 (file)
@@ -609,8 +609,8 @@ static void iwl_mvm_rx_tx_cmd_single(struct iwl_mvm *mvm,
                    !(info->flags & IEEE80211_TX_STAT_ACK))
                        info->flags |= IEEE80211_TX_STAT_AMPDU_NO_BACK;
 
-               /* W/A FW bug: seq_ctl is wrong when the queue is flushed */
-               if (status == TX_STATUS_FAIL_FIFO_FLUSHED) {
+               /* W/A FW bug: seq_ctl is wrong when the status isn't success */
+               if (status != TX_STATUS_SUCCESS) {
                        struct ieee80211_hdr *hdr = (void *)skb->data;
                        seq_ctl = le16_to_cpu(hdr->seq_ctrl);
                }