Skip to content

Commit cde8a7e

Browse files
jmberg-intelgregkh
authored andcommitted
wifi: iwlwifi: mvm: fix 6 GHz scan construction
commit 7245012f0f496162dd95d888ed2ceb5a35170f1a upstream. If more than 255 colocated APs exist for the set of all APs found during 2.4/5 GHz scanning, then the 6 GHz scan construction will loop forever since the loop variable has type u8, which can never reach the number found when that's bigger than 255, and is stored in a u32 variable. Also move it into the loops to have a smaller scope. Using a u32 there is fine, we limit the number of APs in the scan list and each has a limit on the number of RNR entries due to the frame size. With a limit of 1000 scan results, a frame size upper bound of 4096 (really it's more like ~2300) and a TBTT entry size of at least 11, we get an upper bound for the number of ~372k, well in the bounds of a u32. Cc: [email protected] Fixes: eae94cf ("iwlwifi: mvm: add support for 6GHz") Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219375 Link: https://patch.msgid.link/20241023091744.f4baed5c08a1.I8b417148bbc8c5d11c101e1b8f5bf372e17bf2a7@changeid Signed-off-by: Johannes Berg <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
1 parent cd0cdb5 commit cde8a7e

File tree

1 file changed

+2
-1
lines changed
  • drivers/net/wireless/intel/iwlwifi/mvm

1 file changed

+2
-1
lines changed

drivers/net/wireless/intel/iwlwifi/mvm/scan.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1739,7 +1739,8 @@ iwl_mvm_umac_scan_cfg_channels_v6_6g(struct iwl_mvm *mvm,
17391739
&cp->channel_config[ch_cnt];
17401740

17411741
u32 s_ssid_bitmap = 0, bssid_bitmap = 0, flags = 0;
1742-
u8 j, k, s_max = 0, b_max = 0, n_used_bssid_entries;
1742+
u8 k, s_max = 0, b_max = 0, n_used_bssid_entries;
1743+
u32 j;
17431744
bool force_passive, found = false, allow_passive = true,
17441745
unsolicited_probe_on_chan = false, psc_no_listen = false;
17451746

0 commit comments

Comments
 (0)