summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMiri Korenblit <miriam.rachel.korenblit@intel.com>2024-03-04 19:51:54 +0200
committeriwlwifi publisher <>2024-04-17 13:04:24 +0000
commitfb78f0010530e663d48357dc9a8dbb63734c098e (patch)
tree9178aee024fef43d5de4d6f82bdb6f66a3e066d9
parenta3aeb06e80d721bf834bd1f03a22218a3e8b43cb (diff)
downloadbackport-iwlwifi-fb78f0010530e663d48357dc9a8dbb63734c098e.tar.gz
[BUGFIX] wifi: iwlwifi: mvm: flush async_handlers_wiphy_wk on stop
During the stop flow, the async_handlers_wk is flushed but the async_handlers_wiphy_wk is not, leading to a potential issue where the scan status may not be cleared, resulting in a warning in __iwl_mvm_mac_stop. This occurs because the scan_complete_umac notification handler is now running as a wiphy work and may not be scheduled before the status check. To fix this, flush the notification handlers that run as a wiphy work as well. type=bugfix ticket=none fixes=I5baf0c293c89a5a28bd1a6386bf9ca6d2bf61ab8 Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Change-Id: I6cdb4b1a68c95b7ddf53b791cc980c981754b3d4 Reviewed-on: https://gerritwcs.ir.intel.com/c/iwlwifi-stack-dev/+/97457 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-by: Ilan Peer <ilan.peer@intel.com> x-iwlwifi-stack-dev: b079e954b45a5f3a22812786127dc1178e713d8e
-rw-r--r--drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c1
-rw-r--r--versions2
2 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
index 1b4e71ed28..5aa74b9b53 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
@@ -1454,6 +1454,7 @@ void iwl_mvm_mac_stop(struct ieee80211_hw *hw)
{
struct iwl_mvm *mvm = IWL_MAC80211_GET_MVM(hw);
+ wiphy_work_flush(mvm->hw->wiphy, &mvm->async_handlers_wiphy_wk);
flush_work(&mvm->async_handlers_wk);
flush_work(&mvm->add_stream_wk);
diff --git a/versions b/versions
index 999320988e..775e758111 100644
--- a/versions
+++ b/versions
@@ -2,4 +2,4 @@ BACKPORTS_VERSION="(see git)"
BACKPORTED_KERNEL_VERSION="(see git)"
BACKPORTED_KERNEL_NAME="iwlwifi"
BACKPORTS_BUILD_TSTAMP=__DATE__ \" \" __TIME__
-BACKPORTS_GIT_TRACKED="iwlwifi-stack-public:master:11970:1a0a3cee"
+BACKPORTS_GIT_TRACKED="iwlwifi-stack-public:master:11971:b079e954"