]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
iwlwifi: mvm: don't iterate unadded vifs when handling FW SMPS req
authorLuca Coelho <luciano.coelho@intel.com>
Sat, 29 Jan 2022 11:16:15 +0000 (13:16 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 8 Apr 2022 11:58:08 +0000 (13:58 +0200)
[ Upstream commit 8a265d1a619c16400406c9d598411850ee104aed ]

We may not have all the interfaces added to the driver when we get the
THERMAL_DUAL_CHAIN_REQUEST notification from the FW, so instead of
iterating all vifs to update SMPS, iterate only the ones that are
already assigned.  The interfaces that were not assigned yet, will be
updated accordingly when we start using them.

Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Fixes: 2a7ce54ccc23 ("iwlwifi: mvm: honour firmware SMPS requests")
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Link: https://lore.kernel.org/r/iwlwifi.20220129105618.9416aade2ba0.I0b71142f89e3f158aa058a1dfb2517c8c1fa3726@changeid
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/wireless/intel/iwlwifi/mvm/ops.c

index 1f8b97995b9432149e0ca4a6690a75dfcd7fc817..069d54501e30e03aa9b49c9e8bd3b2a81dc2e4fc 100644 (file)
@@ -235,7 +235,8 @@ static void iwl_mvm_rx_thermal_dual_chain_req(struct iwl_mvm *mvm,
         */
        mvm->fw_static_smps_request =
                req->event == cpu_to_le32(THERMAL_DUAL_CHAIN_REQ_DISABLE);
-       ieee80211_iterate_interfaces(mvm->hw, IEEE80211_IFACE_ITER_NORMAL,
+       ieee80211_iterate_interfaces(mvm->hw,
+                                    IEEE80211_IFACE_SKIP_SDATA_NOT_IN_DRIVER,
                                     iwl_mvm_intf_dual_chain_req, NULL);
 }