mirror-linux/drivers/net/wireless
Miri Korenblit 1a222625b4 wifi: iwlwifi: mld: always take beacon ies in link grading
One of the factors of a link's grade is the channel load, which is
calculated from the AP's bss load element.
The current code takes this element from the beacon for an active link,
and from bss->ies for an inactive link.

bss->ies is set to either the beacon's ies or to the probe response
ones, with preference to the probe response (meaning that if there was
even one probe response, the ies of it will be stored in bss->ies and
won't be overiden by the beacon ies).

The probe response can be very old, i.e. from the connection time,
where a beacon is updated before each link selection (which is
triggered only after a passive scan).

In such case, the bss load element in the probe response will not
include the channel load caused by the STA, where the beacon will.

This will cause the inactive link to always have a lower channel
load, and therefore an higher grade than the active link's one.

This causes repeated link switches, causing the throughput to drop.

Fix this by always taking the ies from the beacon, as those are for
sure new.

Fixes: d1e879ec60 ("wifi: iwlwifi: add iwlmld sub-driver")
Reviewed-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
Link: https://patch.msgid.link/20251110145652.b493dbb1853a.I058ba7309c84159f640cc9682d1bda56dd56a536@changeid
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@intel.com>
2025-11-12 09:54:46 +02:00
..
admtek
ath wifi: ath11k: zero init info->status in wmi_process_mgmt_tx_comp() 2025-11-06 07:26:21 -08:00
atmel
broadcom wifi: brcmfmac: fix crash while sending Action Frames in standalone AP Mode 2025-10-20 13:56:25 +02:00
intel wifi: iwlwifi: mld: always take beacon ies in link grading 2025-11-12 09:54:46 +02:00
intersil wifi: mac80211: support parsing S1G TIM PVB 2025-09-04 11:19:01 +02:00
marvell wifi: mwl8k: inject DSSS Parameter Set element into beacons if missing 2025-11-11 11:38:57 +01:00
mediatek wifi: mt76: abort scan/roc on hw restart 2025-09-15 13:23:02 +02:00
microchip Plenty of things going on, notably: 2025-09-11 17:50:46 -07:00
purelifi wifi: plfxlc: Fix error handling in usb driver probe 2025-07-18 14:23:23 +02:00
quantenna
ralink Plenty of things going on, notably: 2025-09-11 17:50:46 -07:00
realtek rtw-next patches for v6.18 2025-09-22 09:30:14 +02:00
rsi
silabs
st wifi: cw1200: cap SSID length in cw1200_do_join() 2025-09-03 09:37:51 +02:00
ti Networking changes for 6.17. 2025-07-30 08:58:55 -07:00
virtual wifi: mac80211_hwsim: Fix possible NULL dereference 2025-11-11 09:25:18 +01:00
zydas wifi: zd1211rw: fix potential memory leak in __zd_usb_enable_rx() 2025-10-30 08:41:10 +01:00
Kconfig
Makefile