]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
bpf: Fix bpf_get_smp_processor_id() on !CONFIG_SMP
authorAndrea Righi <arighi@nvidia.com>
Tue, 17 Dec 2024 19:58:13 +0000 (20:58 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 2 Jan 2025 09:34:10 +0000 (10:34 +0100)
commitf4ab7d74247b0150547cf909b3f6f24ee85183df
tree7a376307e8f809d6f28cc9983326d15ea9a698cf
parentf0f2e5aa56e944cb703c9ccc0ad8c5bbeb3f8874
bpf: Fix bpf_get_smp_processor_id() on !CONFIG_SMP

[ Upstream commit 23579010cf0a12476e96a5f1acdf78a9c5843657 ]

On x86-64 calling bpf_get_smp_processor_id() in a kernel with CONFIG_SMP
disabled can trigger the following bug, as pcpu_hot is unavailable:

 [    8.471774] BUG: unable to handle page fault for address: 00000000936a290c
 [    8.471849] #PF: supervisor read access in kernel mode
 [    8.471881] #PF: error_code(0x0000) - not-present page

Fix by inlining a return 0 in the !CONFIG_SMP case.

Fixes: 1ae6921009e5 ("bpf: inline bpf_get_smp_processor_id() helper")
Signed-off-by: Andrea Righi <arighi@nvidia.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20241217195813.622568-1-arighi@nvidia.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
kernel/bpf/verifier.c