]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
arm64: bpf: Only mitigate cBPF programs loaded by unprivileged users
authorJames Morse <james.morse@arm.com>
Sat, 7 Jun 2025 15:35:34 +0000 (15:35 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 27 Jun 2025 10:05:37 +0000 (11:05 +0100)
[ Upstream commit f300769ead032513a68e4a02e806393402e626f8 ]

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: Pu Lehui <pulehui@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/arm64/net/bpf_jit_comp.c

index 2691e53007eba3b3b66ab379266314f549b13a4d..654e7ed2d1a64227caf39d520c83873e838c58a4 100644 (file)
@@ -341,6 +341,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;