[ath:ath12k-mlo-qcn9274 65/81] drivers/net/wireless/ath/ath12k/mac.c:534 ath12k_get_link_sta() error: buffer overflow 'sta->link' 15 <= 15
Kalle Valo
kvalo at kernel.org
Mon Nov 4 12:21:06 PST 2024
Dan Carpenter <dan.carpenter at linaro.org> writes:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/ath/ath.git ath12k-mlo-qcn9274
> head: 7435d14d41d5d479a5e6a8a2cd4efdac9d928823
> commit: d50d85ea8574956b273faf4cb2493a98c6548b04 [65/81] wifi: ath12k:
> Use mac80211 sta's link_sta instead of deflink
> config: csky-randconfig-r072-20241008
> (https://download.01.org/0day-ci/archive/20241009/202410091157.eMoYClhc-lkp@intel.com/config)
> compiler: csky-linux-gcc (GCC) 14.1.0
>
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <lkp at intel.com>
> | Reported-by: Dan Carpenter <dan.carpenter at linaro.org>
> | Closes: https://lore.kernel.org/r/202410091157.eMoYClhc-lkp@intel.com/
>
> New smatch warnings:
> drivers/net/wireless/ath/ath12k/mac.c:534 ath12k_get_link_sta() error: buffer overflow 'sta->link' 15 <= 15
> drivers/net/wireless/ath/ath12k/mac.c:534 ath12k_get_link_sta() error: buffer overflow 'sta->link' 15 <= 15
> drivers/net/wireless/ath/ath12k/mac.c:534 ath12k_get_link_sta() error: buffer overflow 'sta->link' 15 <= 15
> drivers/net/wireless/ath/ath12k/mac.c:534 ath12k_get_link_sta() error: buffer overflow 'sta->link' 15 <= 15
> drivers/net/wireless/ath/ath12k/mac.c:534 ath12k_get_link_sta() error: buffer overflow 'sta->link' 15 <= 15
>
> vim +534 drivers/net/wireless/ath/ath12k/mac.c
>
> d50d85ea857495 Sriram R 2024-08-16 522 static struct
> d50d85ea857495 Sriram R 2024-08-16 523 ieee80211_link_sta *ath12k_get_link_sta(struct ath12k_link_sta *arsta)
> d50d85ea857495 Sriram R 2024-08-16 524 {
> d50d85ea857495 Sriram R 2024-08-16 525 struct ath12k_sta *ahsta = arsta->ahsta;
> d50d85ea857495 Sriram R 2024-08-16 526 struct ieee80211_sta *sta = ath12k_ahsta_to_sta(ahsta);
> d50d85ea857495 Sriram R 2024-08-16 527 struct ieee80211_link_sta *link_sta;
> d50d85ea857495 Sriram R 2024-08-16 528 /* ieee80211_sta->link[]'s are
> rcu objects which requires rcu_read_lock()
> d50d85ea857495 Sriram R 2024-08-16 529 * to be held for safe access.
> d50d85ea857495 Sriram R 2024-08-16 530 */
> d50d85ea857495 Sriram R 2024-08-16 531 if (arsta->link_id > IEEE80211_MLD_MAX_NUM_LINKS)
>
> Was >= intended?
Yes, fixed version here:
https://git.kernel.org/pub/scm/linux/kernel/git/ath/ath.git/commit/?h=ath12k-mlo&id=722120a853986de95db37e92ecbf731deffe86fa
--
https://patchwork.kernel.org/project/linux-wireless/list/
https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
More information about the ath12k
mailing list