]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-client.git/commitdiff
wifi: mac80211: set default WMM parameters on all links
authorRamanathan Choodamani <quic_rchoodam@quicinc.com>
Thu, 5 Feb 2026 09:42:16 +0000 (15:12 +0530)
committerJohannes Berg <johannes.berg@intel.com>
Mon, 23 Feb 2026 08:30:20 +0000 (09:30 +0100)
Currently, mac80211 only initializes default WMM parameters
on the deflink during do_open(). For MLO cases, this
leaves the additional links without proper WMM defaults
if hostapd does not supply per-link WMM parameters, leading
to inconsistent QoS behavior across links.

Set default WMM parameters for each link during
ieee80211_vif_update_links(), because this ensures all
individual links in an MLD have valid WMM settings during
bring-up and behave consistently across different BSS.

Signed-off-by: Ramanathan Choodamani <quic_rchoodam@quicinc.com>
Signed-off-by: Aishwarya R <aishwarya.r@oss.qualcomm.com>
Link: https://patch.msgid.link/20260205094216.3093542-1-aishwarya.r@oss.qualcomm.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/link.c

index 17bf55dabd31eed342247afed03326ae13ad44e9..a1f67bab8ba1544e3259b792fd470d1f64f40ffd 100644 (file)
@@ -281,6 +281,7 @@ static int ieee80211_vif_update_links(struct ieee80211_sub_if_data *sdata,
        struct ieee80211_bss_conf *old[IEEE80211_MLD_MAX_NUM_LINKS];
        struct ieee80211_link_data *old_data[IEEE80211_MLD_MAX_NUM_LINKS];
        bool use_deflink = old_links == 0; /* set for error case */
+       bool non_sta = sdata->vif.type != NL80211_IFTYPE_STATION;
 
        lockdep_assert_wiphy(sdata->local->hw.wiphy);
 
@@ -337,6 +338,7 @@ static int ieee80211_vif_update_links(struct ieee80211_sub_if_data *sdata,
                link = links[link_id];
                ieee80211_link_init(sdata, link_id, &link->data, &link->conf);
                ieee80211_link_setup(&link->data);
+               ieee80211_set_wmm_default(&link->data, true, non_sta);
        }
 
        if (new_links == 0)