wifi: cfg80211: fix comparison of BSS frequencies

If the "channel->freq_offset" comparison is omitted in cmp_bss(),
BSS with different kHz units cannot be distinguished in the S1G Band.
So "freq_offset" should also be included in the comparison.

Signed-off-by: JUN-KYU SHIN <jk.shin@newratek.com>
Link: https://lore.kernel.org/r/20221111023301.6395-1-jk.shin@newratek.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
JUN-KYU SHIN 2022-11-11 11:33:04 +09:00 committed by Johannes Berg
parent 09d838a457
commit c1d3214d61
1 changed files with 2 additions and 1 deletions

View File

@ -1289,7 +1289,8 @@ static int cmp_bss(struct cfg80211_bss *a,
int i, r;
if (a->channel != b->channel)
return b->channel->center_freq - a->channel->center_freq;
return (b->channel->center_freq * 1000 + b->channel->freq_offset) -
(a->channel->center_freq * 1000 + a->channel->freq_offset);
a_ies = rcu_access_pointer(a->ies);
if (!a_ies)