[PATCH v4 0/3] Improve roam scan strategy
Alexander Ganslandt <[email protected]> Fri, 12 Sep 2025 13:23:19 +0200
| Newsgroups | dev.linux.lists.iwd |
|---|---|
| Message-ID | <[email protected]> |
I recommend looking at the diff in a side-by-side viewer, the patch files are looking far more complicated than they actually are... This is attempt #2 at improving roaming. This removes the previous timestamp-based approach and instead uses a simple list to keep track of which frequencies have been scanned in the current roam attempt. The main idea is to make station_start_roam() the central point for all roaming. When some function wants to trigger a roam, it calls station_start_roam() that takes care of all scan logic. In my own testing I've noticed a big improvement in connection stability when running around a building. There might be edge-cases I've missed though, as I don't have a setup to test all different functionality. Happy to hear your thoughts on this approach and if it can be improved. Thanks, Alexander --- Changes in v4: - Fixed small build error introduced in previous revision - Link to v3: https://lore.kernel.org/r/[email protected] Changes in v3: - Fixed CI issues - Fixed unnecessary braces as per James's comment - Fixed bug where 6GHz "set" variable wasn't freed in all cases in station_fill_scan_freq_subsets() - Added logic to handle case where all subsets are empty in station_fill_scan_freq_subsets() - Link to v2: https://lore.kernel.org/r/[email protected] Changes in v2: - Removed code that tracked scan frequency timestamps - Added code to track which frequencies have been scanned - Link to v1: https://lore.kernel.org/r/[email protected] --- Alexander Ganslandt (3): util: add scan_freq_set_size function station: improve scan_freqs_order channel subsets station: improve roam scan strategy src/station.c | 367 +++++++++++++++++++++++++++++++--------------------------- src/util.c | 11 ++ src/util.h | 1 + 3 files changed, 208 insertions(+), 171 deletions(-) --- base-commit: 3760a49650b39edd623a85a2b9d51645b52d004a change-id: 20250414-roam-scan-improvements-02116c7c4631 Best regards, -- Alexander Ganslandt <[email protected]>