mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 08:43:31 +00:00
wifi: iwlwifi: mvm: iterate active links for STA queues
During HW restart in eSR, links allocated in a station and links active in the interface may differ. Use for_each_sta_active_link to capture this. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Gregory Greenman <gregory.greenman@intel.com> Link: https://lore.kernel.org/r/20230921110726.7ee1f1a55e1c.I410c512d1fad7d1cf9b2d2a3451a312821dc816d@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
4ea1ed1d14
commit
5f809bafe4
1 changed files with 4 additions and 3 deletions
|
@ -865,11 +865,11 @@ int iwl_mvm_tvqm_enable_txq(struct iwl_mvm *mvm,
|
|||
|
||||
if (sta) {
|
||||
struct iwl_mvm_sta *mvmsta = iwl_mvm_sta_from_mac80211(sta);
|
||||
struct ieee80211_link_sta *link_sta;
|
||||
unsigned int link_id;
|
||||
|
||||
for (link_id = 0;
|
||||
link_id < ARRAY_SIZE(mvmsta->link);
|
||||
link_id++) {
|
||||
rcu_read_lock();
|
||||
for_each_sta_active_link(mvmsta->vif, sta, link_sta, link_id) {
|
||||
struct iwl_mvm_link_sta *link =
|
||||
rcu_dereference_protected(mvmsta->link[link_id],
|
||||
lockdep_is_held(&mvm->mutex));
|
||||
|
@ -879,6 +879,7 @@ int iwl_mvm_tvqm_enable_txq(struct iwl_mvm *mvm,
|
|||
|
||||
sta_mask |= BIT(link->sta_id);
|
||||
}
|
||||
rcu_read_unlock();
|
||||
} else {
|
||||
sta_mask |= BIT(sta_id);
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue