[PATCH] WNM: Per-band minimum acceptable signal for BTM pre-scan
Jouni Malinen
j at w1.fi
Mon Oct 5 12:40:17 PDT 2026
On Thu, Jul 30, 2026 at 07:04:43PM +0000, Shukla, Ashish wrote:
> wnm_scan_process() uses a pre-scan-check step to decide whether the
> candidate BSS selected from the driver's cached results is good enough
> to accept without a fresh scan, or whether a scan should be triggered
> to gather more up-to-date information. The current heuristic in that
> step only checks that the sample is under 10 seconds old and that
> need_to_roam_within_ess() does not immediately want to roam back to
> the current BSS. It does not take the absolute signal level of the
> selected candidate into account.
>
> On 6 GHz in particular, the acceptable RSSI floor is meaningfully
> lower than on 5.
>
> Add a per-band minimum acceptable signal (-80 dBm on 2.4 GHz, -75 dBm
> on 5 GHz, -70 dBm on 6 GHz) and consult it in the pre-scan-check step.
> If the selected candidate's cached level is below the floor for its
> band, return 0 from wnm_scan_process() so a scan is triggered before
> committing to the roam. This avoids accepting a cached below-floor
> sample as the transition target on the first pass, when a scan on the
> candidate's channel would likely reveal it as unusable.
>
> The main accept decision still flows through
> wpa_supplicant_need_to_roam_within_ess() on the post-scan pass; this
> change only tightens the pre-scan discard. No behavior change for
> candidates cached at or above the floor.
Thanks, applied.
--
Jouni Malinen PGP id EFC895FA
More information about the Hostap
mailing list