]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
wifi: iwlwifi: mld: don't WARN on WoWLAN suspend w/o netdetect
authorJohannes Berg <johannes.berg@intel.com>
Wed, 27 May 2026 20:05:09 +0000 (23:05 +0300)
committerMiri Korenblit <miriam.rachel.korenblit@intel.com>
Wed, 3 Jun 2026 14:02:55 +0000 (17:02 +0300)
Clearly, from a user perspective, it must be valid to configure
WoWLAN and then suspend while not connected to a network. Since
mac80211 doesn't distinguish these cases and simply calls the
driver to suspend whenever WoWLAN is configured, the driver has
to cleanly handle the case where it's called for WoWLAN, it's
not connected but there's also no netdetect configured.

Remove the WARN_ON() and keep returning 1 to disconnect and
then suspend.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Link: https://patch.msgid.link/20260527230313.19720967372b.Iff30814510a26f9f609f98eeea3111c50c1afb31@changeid
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
drivers/net/wireless/intel/iwlwifi/mld/d3.c

index fc0a5871df2f17a7a44d6c9c91d5ef0e40b77128..458a668ba9168bffa6de106cdaba1e0713f656d3 100644 (file)
@@ -2066,8 +2066,11 @@ int iwl_mld_wowlan_suspend(struct iwl_mld *mld, struct cfg80211_wowlan *wowlan)
 
        if (!bss_vif->cfg.assoc) {
                int ret;
-               /* If we're not associated, this must be netdetect */
-               if (WARN_ON(!wowlan->nd_config))
+               /*
+                * If not associated we can only do netdetect, if
+                * that's not enabled then just suspend normally.
+                */
+               if (!wowlan->nd_config)
                        return 1;
 
                ret = iwl_mld_netdetect_config(mld, bss_vif, wowlan);