OSDN Git Service

wifi: iwlwifi: mvm: avoid sta lookup in queue alloc
authorJohannes Berg <johannes.berg@intel.com>
Tue, 14 Mar 2023 17:49:13 +0000 (19:49 +0200)
committerJohannes Berg <johannes.berg@intel.com>
Wed, 15 Mar 2023 12:25:12 +0000 (13:25 +0100)
commit0936998393c7dffd68ba5d73eabdabf8dddbbc41
tree6a213e55a951b457d16d74e14cd6b72842aacc86
parent3b50d9a174575473cc5ed8eba3570e02ea3d0733
wifi: iwlwifi: mvm: avoid sta lookup in queue alloc

In FW restart scenarios, we allocate the queues from the
iwl_mvm_realloc_queues_after_restart() function, but that
is called before we insert the station ID into our map
(mvm->fw_id_to_mac_id).

However, in all cases where we're actually allocating a
queue for a "real" (not bcast, aux, ...) station we have
the sta pointer already, so just pass it along to use it
instead of looking it up.

This fixes an issue where after restart we only allocated
a queue of size 16 (due to the ordering issue described
above), and thus never got good throughput again since no
aggregates could be formed on transmit.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Gregory Greenman <gregory.greenman@intel.com>
Link: https://lore.kernel.org/r/20230314194113.4d70868003e8.I3476fee5c12f5b1af2be5e2f38a9df7d66d02b62@changeid
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
drivers/net/wireless/intel/iwlwifi/mvm/sta.c