diff options
author | Miri Korenblit <miriam.rachel.korenblit@intel.com> | 2024-03-12 22:29:57 +0200 |
---|---|---|
committer | iwlwifi publisher <> | 2024-04-17 13:38:21 +0000 |
commit | 0ac33a66117d0c44866438b3e666473a8b2549f7 (patch) | |
tree | 3bc37b2e36abffb680b05cf9ffd7b92e6f12e084 | |
parent | fb77dfad7066cf0251157b388efd6fdc1d78f99d (diff) | |
download | backport-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.c | 14 | ||||
-rw-r--r-- | drivers/net/wireless/intel/iwlwifi/mvm/sta.c | 12 | ||||
-rw-r--r-- | versions | 2 |
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; } @@ -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" |