summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorJames Morse <james.morse@arm.com>2025-04-29 16:03:38 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-05-18 08:24:10 +0200
commit80251f62028f1ab2e09be5ca3123f84e8b00389a (patch)
treeda2845a16978b409fcfdc1aa9ad10bf7e7526fa3 /arch
parent42a20cf51011788f04cf2adbcd7681f02bdb6c27 (diff)
downloadlinux-80251f62028f1ab2e09be5ca3123f84e8b00389a.tar.gz
linux-80251f62028f1ab2e09be5ca3123f84e8b00389a.tar.bz2
linux-80251f62028f1ab2e09be5ca3123f84e8b00389a.zip
arm64: bpf: Only mitigate cBPF programs loaded by unprivileged users
commit f300769ead032513a68e4a02e806393402e626f8 upstream. Support for eBPF programs loaded by unprivileged users is typically disabled. This means only cBPF programs need to be mitigated for BHB. In addition, only mitigate cBPF programs that were loaded by an unprivileged user. Privileged users can also load the same program via eBPF, making the mitigation pointless. Signed-off-by: James Morse <james.morse@arm.com> Reviewed-by: Catalin Marinas <catalin.marinas@arm.com> Acked-by: Daniel Borkmann <daniel@iogearbox.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm64/net/bpf_jit_comp.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/arm64/net/bpf_jit_comp.c b/arch/arm64/net/bpf_jit_comp.c
index 027775e6c9b1..75523c1be073 100644
--- a/arch/arm64/net/bpf_jit_comp.c
+++ b/arch/arm64/net/bpf_jit_comp.c
@@ -666,6 +666,9 @@ static void __maybe_unused build_bhb_mitigation(struct jit_ctx *ctx)
arm64_get_spectre_v2_state() == SPECTRE_VULNERABLE)
return;
+ if (capable(CAP_SYS_ADMIN))
+ return;
+
if (supports_clearbhb(SCOPE_SYSTEM)) {
emit(aarch64_insn_gen_hint(AARCH64_INSN_HINT_CLEARBHB), ctx);
return;