mirror of
https://git.kernel.org/pub/scm/network/wireless/iwd.git
synced 2024-11-25 09:39:25 +01:00
station: reverse roam scan results for sorted known frequencies
The known frequency list is now a sorted list and the roam scan results were not complying with this new requirement. The fix is easy though since the iteration order of the scan results does not matter (the roam candidates are inserted by rank). To fix the known frequencies order we can simply reverse the scan results list before iterating it.
This commit is contained in:
parent
643503eeea
commit
1fe68aef0b
@ -2636,6 +2636,12 @@ static bool station_roam_scan_notify(int err, struct l_queue *bss_list,
|
|||||||
util_address_to_string(current_bss->addr),
|
util_address_to_string(current_bss->addr),
|
||||||
util_ssid_to_utf8(current_bss->ssid_len, current_bss->ssid));
|
util_ssid_to_utf8(current_bss->ssid_len, current_bss->ssid));
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Reverse now so the known frequency list gets updated in the correct
|
||||||
|
* order (via network_bss_update).
|
||||||
|
*/
|
||||||
|
l_queue_reverse(bss_list);
|
||||||
|
|
||||||
while ((bss = l_queue_pop_head(bss_list))) {
|
while ((bss = l_queue_pop_head(bss_list))) {
|
||||||
double rank;
|
double rank;
|
||||||
uint32_t kbps100 = DIV_ROUND_CLOSEST(bss->data_rate, 100000);
|
uint32_t kbps100 = DIV_ROUND_CLOSEST(bss->data_rate, 100000);
|
||||||
|
Loading…
Reference in New Issue
Block a user