Subject: Re: iwlwifi: mvm: add terminate entry for dmi_system_id tables

From: Kalle Valo <[email-masked]>
Date: Wed, 3 Mar 2021 15:57:04 +0000 (UTC)

Wei Yongjun <[email-masked]> wrote:

> Make sure dmi_system_id tables are NULL terminated. This crashed when LTO was enabled:
> 
> BUG: KASAN: global-out-of-bounds in dmi_check_system+0x5a/0x70
> Read of size 1 at addr ffffffffc16af750 by task NetworkManager/1913
> 
> CPU: 4 PID: 1913 Comm: NetworkManager Not tainted 5.12.0-rc1+ #10057
> Hardware name: LENOVO 20THCTO1WW/20THCTO1WW, BIOS N2VET27W (1.12 ) 12/21/2020
> Call Trace:
>  dump_stack+0x90/0xbe
>  print_address_description.constprop.0+0x1d/0x140
>  ? dmi_check_system+0x5a/0x70
>  ? dmi_check_system+0x5a/0x70
>  kasan_report.cold+0x7b/0xd4
>  ? dmi_check_system+0x5a/0x70
>  __asan_load1+0x4d/0x50
>  dmi_check_system+0x5a/0x70
>  iwl_mvm_up+0x1360/0x1690 [iwlmvm]
>  ? iwl_mvm_send_recovery_cmd+0x270/0x270 [iwlmvm]
>  ? setup_object.isra.0+0x27/0xd0
>  ? kasan_poison+0x20/0x50
>  ? ___slab_alloc.constprop.0+0x483/0x5b0
>  ? mempool_kmalloc+0x17/0x20
>  ? ftrace_graph_ret_addr+0x2a/0xb0
>  ? kasan_poison+0x3c/0x50
>  ? cfg80211_iftype_allowed+0x2e/0x90 [cfg80211]
>  ? __kasan_check_write+0x14/0x20
>  ? mutex_lock+0x86/0xe0
>  ? __mutex_lock_slowpath+0x20/0x20
>  __iwl_mvm_mac_start+0x49/0x290 [iwlmvm]
>  iwl_mvm_mac_start+0x37/0x50 [iwlmvm]
>  drv_start+0x73/0x1b0 [mac80211]
>  ieee80211_do_open+0x53e/0xf10 [mac80211]
>  ? ieee80211_check_concurrent_iface+0x266/0x2e0 [mac80211]
>  ieee80211_open+0xb9/0x100 [mac80211]
>  __dev_open+0x1b8/0x280
> 
> Fixes: a2ac0f48a07c ("iwlwifi: mvm: implement approved list for the PPAG feature")
> Reported-by: Hulk Robot <[email-masked]>
> Signed-off-by: Wei Yongjun <[email-masked]>
> Reviewed-by: Nathan Chancellor <[email-masked]>
> Tested-by: Victor Michel <[email-masked]>
> Acked-by: Luca Coelho <[email-masked]>
> [[email-masked]: improve commit log]

Patch applied to wireless-drivers.git, thanks.

a22549f12767 iwlwifi: mvm: add terminate entry for dmi_system_id tables

-- 
https://patchwork.kernel.org/project/linux-wireless/patch/[email-masked]/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches