Add a test case to verify that without CAP_PERFMON, the test now succeeds instead of failing due to a verification error. Signed-off-by: Kumar Kartikeya Dwivedi <memxor@xxxxxxxxx> --- .../bpf/progs/verifier_stack_noperfmon.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/tools/testing/selftests/bpf/progs/verifier_stack_noperfmon.c b/tools/testing/selftests/bpf/progs/verifier_stack_noperfmon.c index 52da836d47a6..f6d5fa76c90c 100644 --- a/tools/testing/selftests/bpf/progs/verifier_stack_noperfmon.c +++ b/tools/testing/selftests/bpf/progs/verifier_stack_noperfmon.c @@ -19,3 +19,18 @@ __naked void stack_noperfmon_rejecte_invalid_read(void) exit; \ " ::: __clobber_all); } + +SEC("socket") +__description("stack_noperfmon: narrow spill onto 64-bit scalar spilled slots") +__success +__naked void stack_noperfmon_spill_32bit_onto_64bit_slot(void) +{ + asm volatile(" \ + *(u64*)(r10 - 8) = 1; \ + *(u32*)(r10 - 8) = 1; \ + r0 = 0; \ + exit; \ +" : + : + : __clobber_all); +} -- 2.43.5