From: Miri Korenblit Date: Tue, 6 May 2025 19:40:57 +0000 (+0300) Subject: wifi: iwlwifi: mld: avoid init-after-queue X-Git-Tag: v6.16-rc1~132^2~46^2~8^2~64 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1437d6c4f2e098ce993f3b69f42b6a04e474cc11;p=thirdparty%2Fkernel%2Flinux.git wifi: iwlwifi: mld: avoid init-after-queue rx_omi::finished_work is initialized when the containing link is. If the worker was queued and then an error happened, we will get to iwl_mld_init_link from the reconfig and initialize the work after it was queued. Reviewed-by: Johannes Berg Link: https://patch.msgid.link/20250506194102.3407967-11-miriam.rachel.korenblit@intel.com Signed-off-by: Miri Korenblit --- diff --git a/drivers/net/wireless/intel/iwlwifi/mld/link.c b/drivers/net/wireless/intel/iwlwifi/mld/link.c index fa822b7487912..cecefa26445fd 100644 --- a/drivers/net/wireless/intel/iwlwifi/mld/link.c +++ b/drivers/net/wireless/intel/iwlwifi/mld/link.c @@ -785,8 +785,9 @@ iwl_mld_init_link(struct iwl_mld *mld, struct ieee80211_bss_conf *link, iwl_mld_init_internal_sta(&mld_link->aux_sta); iwl_mld_init_internal_sta(&mld_link->mon_sta); - wiphy_delayed_work_init(&mld_link->rx_omi.finished_work, - iwl_mld_omi_bw_finished_work); + if (!mld->fw_status.in_hw_restart) + wiphy_delayed_work_init(&mld_link->rx_omi.finished_work, + iwl_mld_omi_bw_finished_work); return iwl_mld_allocate_link_fw_id(mld, &mld_link->fw_id, link); }