Skip to content

Commit e8fbe99

Browse files
greearbjmberg-intel
authored andcommitted
wifi: iwlwifi: Ensure ack flag is properly cleared.
Debugging indicates that nothing else is clearing the info->flags, so some frames were flagged as ACKed when they should not be. Explicitly clear the ack flag to ensure this does not happen. Signed-off-by: Ben Greear <[email protected]> Acked-by: Gregory Greenman <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Johannes Berg <[email protected]>
1 parent 424c82e commit e8fbe99

File tree

1 file changed

+3
-0
lines changed
  • drivers/net/wireless/intel/iwlwifi/mvm

1 file changed

+3
-0
lines changed

drivers/net/wireless/intel/iwlwifi/mvm/tx.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1612,6 +1612,7 @@ static void iwl_mvm_rx_tx_cmd_single(struct iwl_mvm *mvm,
16121612
iwl_trans_free_tx_cmd(mvm->trans, info->driver_data[1]);
16131613

16141614
memset(&info->status, 0, sizeof(info->status));
1615+
info->flags &= ~(IEEE80211_TX_STAT_ACK | IEEE80211_TX_STAT_TX_FILTERED);
16151616

16161617
/* inform mac80211 about what happened with the frame */
16171618
switch (status & TX_STATUS_MSK) {
@@ -1964,6 +1965,8 @@ static void iwl_mvm_tx_reclaim(struct iwl_mvm *mvm, int sta_id, int tid,
19641965
*/
19651966
if (!is_flush)
19661967
info->flags |= IEEE80211_TX_STAT_ACK;
1968+
else
1969+
info->flags &= ~IEEE80211_TX_STAT_ACK;
19671970
}
19681971

19691972
/*

0 commit comments

Comments
 (0)