summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiri Korenblit <miriam.rachel.korenblit@intel.com>2024-03-12 22:29:57 +0200
committeriwlwifi publisher <>2024-04-17 13:38:21 +0000
commit0ac33a66117d0c44866438b3e666473a8b2549f7 (patch)
tree3bc37b2e36abffb680b05cf9ffd7b92e6f12e084
parentfb77dfad7066cf0251157b388efd6fdc1d78f99d (diff)
downloadbackport-iwlwifi-0ac33a66117d0c44866438b3e666473a8b2549f7.tar.gz
wifi: iwlwifi: mvm: allocate MPDU counters in iwl_mvm_sta_init
Instead of allocating in iwl_mvm_mld_add_sta and checking there that we are not in restart, allocate it in iwl_mvm_sta_init which is not called in restart type=cleanup ticket=none Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Change-Id: I6d78a93d62e6890c2db8656c14ece7366b40abb1 Reviewed-on: https://gerritwcs.ir.intel.com/c/iwlwifi-stack-dev/+/98861 tested: iil_jenkins iil_jenkins <EC.GER.UNIX.IIL.JENKINS@INTEL.COM> automatic-review: iil_jenkins iil_jenkins <EC.GER.UNIX.IIL.JENKINS@INTEL.COM> Reviewed-by: Johannes Berg <johannes.berg@intel.com> Reviewed-on: https://gerritwcs.ir.intel.com/c/iwlwifi-stack-dev/+/99438 Reviewed-by: Golan Ben Ami <golan.ben.ami@intel.com> x-iwlwifi-stack-dev: bea49312cb0dddc6bef61a23336c101383ea4ea4
-rw-r--r--drivers/net/wireless/intel/iwlwifi/mvm/mld-sta.c14
-rw-r--r--drivers/net/wireless/intel/iwlwifi/mvm/sta.c12
-rw-r--r--versions2
3 files changed, 13 insertions, 15 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/mld-sta.c b/drivers/net/wireless/intel/iwlwifi/mvm/mld-sta.c
index 34c9950de5..c59de2dcfb 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/mld-sta.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/mld-sta.c
@@ -732,20 +732,6 @@ int iwl_mvm_mld_add_sta(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
mvm_link_sta);
}
-
- /* MPDUs are counted only when EMLSR is possible */
- if (!test_bit(IWL_MVM_STATUS_IN_HW_RESTART, &mvm->status) &&
- vif->type == NL80211_IFTYPE_STATION && !vif->p2p &&
- !sta->tdls && ieee80211_vif_is_mld(vif)) {
- mvm_sta->mpdu_counters =
- kcalloc(mvm->trans->num_rx_queues,
- sizeof(*mvm_sta->mpdu_counters),
- GFP_KERNEL);
- if (mvm_sta->mpdu_counters)
- for (int q = 0; q < mvm->trans->num_rx_queues; q++)
- spin_lock_init(&mvm_sta->mpdu_counters[q].lock);
- }
-
return 0;
err:
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/sta.c b/drivers/net/wireless/intel/iwlwifi/mvm/sta.c
index 063959d803..6ffeaabd1d 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/sta.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/sta.c
@@ -1846,6 +1846,18 @@ int iwl_mvm_sta_init(struct iwl_mvm *mvm, struct ieee80211_vif *vif,
iwl_mvm_toggle_tx_ant(mvm, &mvm_sta->tx_ant);
+ /* MPDUs are counted only when EMLSR is possible */
+ if (vif->type == NL80211_IFTYPE_STATION && !vif->p2p &&
+ !sta->tdls && ieee80211_vif_is_mld(vif)) {
+ mvm_sta->mpdu_counters =
+ kcalloc(mvm->trans->num_rx_queues,
+ sizeof(*mvm_sta->mpdu_counters),
+ GFP_KERNEL);
+ if (mvm_sta->mpdu_counters)
+ for (int q = 0; q < mvm->trans->num_rx_queues; q++)
+ spin_lock_init(&mvm_sta->mpdu_counters[q].lock);
+ }
+
return 0;
}
diff --git a/versions b/versions
index ea4af8d601..f1d5e115c3 100644
--- a/versions
+++ b/versions
@@ -2,5 +2,5 @@ BACKPORTS_VERSION="(see git)"
BACKPORTED_KERNEL_VERSION="(see git)"
BACKPORTED_KERNEL_NAME="iwlwifi"
BACKPORTS_BUILD_TSTAMP=__DATE__ \" \" __TIME__
-BACKPORTS_GIT_TRACKED="iwlwifi-stack-public:release/core87:12027:1fef99c6"
+BACKPORTS_GIT_TRACKED="iwlwifi-stack-public:release/core87:12028:bea49312"
BACKPORTS_BRANCH_TSTAMP="Apr 17 2024 13:11:40"