RDKB-64295: Match MLO Assoc addresses#1121
Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates the LEVL management-frame correlation logic to better match Probe Request frames to Association Request frames on XB10 Broadcom platforms where the driver may replace the incoming SA (link MAC) with the MLD MAC.
Changes:
- Added parsing of Multi-Link (MLO) IEs in AssocReq frames to extract MLD MAC / link MACs and match them against stored ProbeReq entries.
- Added fallback parsing of a vendor-specific IE to locate the “replaced MAC” and match it against stored ProbeReq entries.
- Gated the new matching attempt behind
_XB10_PRODUCT_REQ_at the call site.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| wifi_util_dbg_print(WIFI_APPS, "%s:%d: found matching ProbeReq with Link MAC: %s\n", | ||
| __func__, __LINE__, vendor_mac_str); | ||
| elem = (probe_req_elem_t *)hash_map_remove(app->data.u.levl.probe_req_map, | ||
| vendor_mac_str); |
| static probe_req_elem_t *find_matching_mlo_probe_req(struct ieee80211_mgmt *frame, | ||
| frame_data_t *msg, wifi_app_t *app) | ||
| { |
| elem = (probe_req_elem_t *)hash_map_remove(app->data.u.levl.probe_req_map, mac_str); | ||
| pthread_mutex_unlock(&app->data.u.levl.lock); | ||
|
|
||
| #if defined(_XB10_PRODUCT_REQ_) |
There was a problem hiding this comment.
use CONFIG_IEEE80211BE instead of XB10_PRODUCT_REQ
3399fd4 to
1b6fa88
Compare
|
Moved vendor IE check up, since we should mostly rely on this and in bad case we should try and go with either the MLD MAC or MAC from STA profile. It is still being clarified if the ProbeReq needs to be from the same band. |
|
It still is not determined whether we should act upon out-of-band (e.g. Assoc on 5G Probe on 6G) ProbeRequests. Once we get the final requirements specified, commit with ds_dlist will be either squashed in or thrown out |
332e366 to
fc56a05
Compare
|
Current understanding for MLO is - no matter the band, deliver the frame if it is identified for the client. |
fc56a05 to
693fba9
Compare
Impacted Platforms: XB10 Reason for change: Broadcom driver replaces incoming SA MAC with MLD MAC. This change inspects the frame in search of STA profiles or vendor dependent IE in order to find a ProbeReq with matchin MAC. Test Procedure: Check if ProbeReq can get matched against Assoc. Risks: None Priority: P1 Signed-off-by: Brayan Milczarek <brayan_milczarek@comcast.com>
693fba9 to
0d0361e
Compare
Impacted Platforms: XB10
Reason for change: Broadcom driver replaces incoming SA MAC with MLD MAC. This change inspects the frame in search of STA profiles or vendor dependent IE in order to find a ProbeReq with matchin MAC. Test Procedure: Check if ProbeReq can get matched against Assoc.
Risks: None
Priority: P1