linux/drivers/net/wireless/intel/iwlwifi
Sara Sharon 94c3e614df iwlwifi: mvm: fix pending frame counter calculation
In DQA mode the check whether to decrement the pending frames
counter relies on the tid status and not on the txq id.
This may result in an inconsistent state of the pending frames
counter in case frame is queued on a non aggregation queue but
with this TID, and will be followed by a failure to remove the
station and later on SYSASSERT 0x3421 when trying to remove the
MAC.
Such frames are for example bar and qos NDPs.
Fix it by aligning the condition of incrementing the counter
with the condition of decrementing it - rely on TID state for
DQA mode.
Also, avoid internal error like this affecting station removal
for DQA mode - since we can know for sure it is an internal
error.

Fixes: cf961e1662 ("iwlwifi: mvm: support dqa-mode agg on non-shared queue")
Signed-off-by: Sara Sharon <sara.sharon@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
2017-02-06 19:19:23 +02:00
..
dvm iwlwifi: dvm: remove unused variable compiler warning in debugfs.c 2017-01-26 09:39:01 +02:00
mvm iwlwifi: mvm: fix pending frame counter calculation 2017-02-06 19:19:23 +02:00
pcie iwlwifi: pcie: fix the set of DMA memory mask 2017-02-06 19:19:23 +02:00
iwl-1000.c iwlwifi: make configuration structs smaller 2016-05-10 22:34:06 +03:00
iwl-2000.c iwlwifi: make configuration structs smaller 2016-05-10 22:34:06 +03:00
iwl-5000.c iwlwifi: make configuration structs smaller 2016-05-10 22:34:06 +03:00
iwl-6000.c iwlwifi: fix MODULE_FIRMWARE for 6030 2017-01-26 09:38:58 +02:00
iwl-7000.c iwlwifi: mvm: bump max API to 28 2017-01-26 09:38:55 +02:00
iwl-8000.c iwlwifi: mvm: bump max API to 28 2017-01-26 09:38:55 +02:00
iwl-9000.c iwlwifi: mvm: bump max API to 28 2017-01-26 09:38:55 +02:00
iwl-a000.c iwlwifi: mvm: bump max API to 28 2017-01-26 09:38:55 +02:00
iwl-agn-hw.h
iwl-config.h iwlwifi: mvm: cleanup redundant no_power_up_nic_in_init config 2016-09-22 23:13:29 +03:00
iwl-csr.h iwlwifi: pcie: Configure shared interrupt vector in MSIX mode 2016-09-16 09:10:24 +03:00
iwl-debug.c
iwl-debug.h iwlwifi: add missing type declaration 2016-07-12 14:51:57 +03:00
iwl-devtrace-data.h iwlwifi: pcie: build an A-MSDU using TSO core 2015-12-20 23:27:37 +02:00
iwl-devtrace-io.h iwlwifi: centralize 64 bit HW registers write 2016-07-06 10:22:08 +03:00
iwl-devtrace-iwlwifi.h iwlwifi: mvm: adapt the firmware assert log to new firmware 2016-03-09 21:05:16 +02:00
iwl-devtrace-msg.h
iwl-devtrace-ucode.h
iwl-devtrace.c iwlwifi: don't export trace points that are used in iwlwifi only 2016-09-19 10:09:41 +03:00
iwl-devtrace.h iwlwifi: tracing: decouple from mac80211 2016-07-06 10:08:56 +03:00
iwl-drv.c iwlwifi: alloc memory dynamically also for DVM 2017-01-31 09:10:24 +02:00
iwl-drv.h
iwl-eeprom-parse.c iwlwifi: advertise maximal MPDU length when Rx MQ is supported 2016-07-01 16:51:22 +03:00
iwl-eeprom-parse.h iwlwifi: decouple PCIe transport from mac80211 2016-07-06 10:09:56 +03:00
iwl-eeprom-read.c
iwl-eeprom-read.h
iwl-fh.h iwlwifi: change byte count table for a000 devices 2016-09-16 09:10:22 +03:00
iwl-fw-error-dump.h iwlwifi: Reserve iwl_fw_error_dump_type enum 2016-07-06 02:07:48 +03:00
iwl-fw-file.h iwlwifi: enlarge number of ucode sections 2017-01-26 09:38:57 +02:00
iwl-fw.h iwlwifi: enlarge number of ucode sections 2017-01-26 09:38:57 +02:00
iwl-io.c iwlwifi: fix semicolon.cocci warnings 2016-09-15 19:32:59 +03:00
iwl-io.h iwlwifi: centralize 64 bit HW registers write 2016-07-06 10:22:08 +03:00
iwl-modparams.h iwlwifi: decouple PCIe transport from mac80211 2016-07-06 10:09:56 +03:00
iwl-notif-wait.c iwlwifi: move to wide ID for all commands 2016-09-19 10:09:39 +03:00
iwl-notif-wait.h
iwl-nvm-parse.c iwlwifi: move BIOS MCC retrieval to common code 2016-09-19 10:09:37 +03:00
iwl-nvm-parse.h iwlwifi: move BIOS MCC retrieval to common code 2016-09-19 10:09:37 +03:00
iwl-op-mode.h
iwl-phy-db.c iwlwifi: mvm: set HCMD_NAME for PHY_DB as well 2016-09-19 11:29:33 +03:00
iwl-phy-db.h iwlwifi: mvm: remove redundant alloc_ctx parameter 2016-05-10 22:34:03 +03:00
iwl-prph.h iwlwifi: pcie: remove dead code 2016-08-30 14:16:43 +03:00
iwl-scd.h
iwl-trans.c iwlwifi: migrate to devm_* API 2016-09-19 10:09:42 +03:00
iwl-trans.h iwlwifi: move to wide ID for all commands 2016-09-19 10:09:39 +03:00
Kconfig iwlwifi: remove IWLWIFI_DEBUG_EXPERIMENTAL_UCODE 2016-05-10 22:34:05 +03:00
Makefile Makefile: drop -D__CHECK_ENDIAN__ from cflags 2016-12-16 00:13:43 +02:00