]> www.infradead.org Git - users/jedix/linux-maple.git/commit
selftests/bpf: Fix caps for __xlated/jited_unpriv
authorLuis Gerhorst <luis.gerhorst@fau.de>
Thu, 1 May 2025 07:35:52 +0000 (09:35 +0200)
committerAlexei Starovoitov <ast@kernel.org>
Fri, 9 May 2025 18:29:11 +0000 (11:29 -0700)
commitcf15cdc0f0f39a5c6315200808ec3e3995b0c2d2
tree2662008c81803fcd67d18b95b0ddaafbe1d2c5c1
parent0f2d39f340627a6a2cc5b4511e6fcb38a7be4d4e
selftests/bpf: Fix caps for __xlated/jited_unpriv

Currently, __xlated_unpriv and __jited_unpriv do not work because the
BPF syscall will overwrite info.jited_prog_len and info.xlated_prog_len
with 0 if the process is not bpf_capable(). This bug was not noticed
before, because there is no test that actually uses
__xlated_unpriv/__jited_unpriv.

To resolve this, simply restore the capabilities earlier (but still
after loading the program). Adding this here unconditionally is fine
because the function first checks that the capabilities were initialized
before attempting to restore them.

This will be important later when we add tests that check whether a
speculation barrier was inserted in the correct location.

Signed-off-by: Luis Gerhorst <luis.gerhorst@fau.de>
Fixes: 9c9f73391310 ("selftests/bpf: allow checking xlated programs in verifier_* tests")
Fixes: 7d743e4c759c ("selftests/bpf: __jited test tag to check disassembly after jit")
Acked-by: Kumar Kartikeya Dwivedi <memxor@gmail.com>
Tested-by: Eduard Zingerman <eddyz87@gmail.com>
Link: https://lore.kernel.org/r/20250501073603.1402960-2-luis.gerhorst@fau.de
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/testing/selftests/bpf/test_loader.c