Skip to content

Commit 50b3598

Browse files
benzeajmberg-intel
authored andcommitted
wifi: cfg80211: ignore link disabled flag from userspace
When the AP has an advertised TID to Link Mapping (TTLM) it shall include the element in the association response. As such, when this element is present it needs to be used for the currently dormant links. See Draft P802.11REVmf_D1.0 section 35.3.7.2.3 ("Negotiation of TTLM") for the details. The flag is also not usable in case userspace wants to specify a negotiated TTLM during association. Note that for the link reconfiguration case, mac80211 did not use the information. Draft P802.11REVmf_D1.0 states in section 35.3.6.4 ("Link reconfiguration to the setup links) that we "shall operate with all the TIDs mapped to the newly added links ..." All this means that the flag is not needed. The implementation should parse the information from the association response. Signed-off-by: Benjamin Berg <benjamin.berg@intel.com> Reviewed-by: Johannes Berg <johannes.berg@intel.com> Reviewed-by: Ilan Peer <ilan.peer@intel.com> Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com> Link: https://patch.msgid.link/20260118093904.754e057896a5.Ifd06f5ef839a93bfd54d0593dc932870f95f3242@changeid Signed-off-by: Johannes Berg <johannes.berg@intel.com>
1 parent aebc29d commit 50b3598

3 files changed

Lines changed: 3 additions & 15 deletions

File tree

include/net/cfg80211.h

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3221,16 +3221,13 @@ struct cfg80211_auth_request {
32213221
* if this is %NULL for a link, that link is not requested
32223222
* @elems: extra elements for the per-STA profile for this link
32233223
* @elems_len: length of the elements
3224-
* @disabled: If set this link should be included during association etc. but it
3225-
* should not be used until enabled by the AP MLD.
32263224
* @error: per-link error code, must be <= 0. If there is an error, then the
32273225
* operation as a whole must fail.
32283226
*/
32293227
struct cfg80211_assoc_link {
32303228
struct cfg80211_bss *bss;
32313229
const u8 *elems;
32323230
size_t elems_len;
3233-
bool disabled;
32343231
int error;
32353232
};
32363233

include/uapi/linux/nl80211.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2880,8 +2880,9 @@ enum nl80211_commands {
28802880
* index. If the userspace includes more RNR elements than number of
28812881
* MBSSID elements then these will be added in every EMA beacon.
28822882
*
2883-
* @NL80211_ATTR_MLO_LINK_DISABLED: Flag attribute indicating that the link is
2884-
* disabled.
2883+
* @NL80211_ATTR_MLO_LINK_DISABLED: Unused. It was used to indicate that a link
2884+
* is disabled during association. However, the AP will send the
2885+
* information by including a TTLM in the association response.
28852886
*
28862887
* @NL80211_ATTR_BSS_DUMP_INCLUDE_USE_DATA: Include BSS usage data, i.e.
28872888
* include BSSes that can only be used in restricted scenarios and/or

net/wireless/nl80211.c

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12241,9 +12241,6 @@ static int nl80211_process_links(struct cfg80211_registered_device *rdev,
1224112241
return -EINVAL;
1224212242
}
1224312243
}
12244-
12245-
links[link_id].disabled =
12246-
nla_get_flag(attrs[NL80211_ATTR_MLO_LINK_DISABLED]);
1224712244
}
1224812245

1224912246
return 0;
@@ -12423,13 +12420,6 @@ static int nl80211_associate(struct sk_buff *skb, struct genl_info *info)
1242312420
goto free;
1242412421
}
1242512422

12426-
if (req.links[req.link_id].disabled) {
12427-
GENL_SET_ERR_MSG(info,
12428-
"cannot have assoc link disabled");
12429-
err = -EINVAL;
12430-
goto free;
12431-
}
12432-
1243312423
if (info->attrs[NL80211_ATTR_ASSOC_MLD_EXT_CAPA_OPS])
1243412424
req.ext_mld_capa_ops =
1243512425
nla_get_u16(info->attrs[NL80211_ATTR_ASSOC_MLD_EXT_CAPA_OPS]);

0 commit comments

Comments
 (0)