]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
selftests/bpf: Test invariants on JSLT crossing sign
authorPaul Chaignon <paul.chaignon@gmail.com>
Mon, 28 Jul 2025 09:51:45 +0000 (11:51 +0200)
committerAlexei Starovoitov <ast@kernel.org>
Mon, 28 Jul 2025 17:02:13 +0000 (10:02 -0700)
The improvement of the u64/s64 range refinement fixed the invariant
violation that was happening on this test for BPF_JSLT when crossing the
sign boundary.

After this patch, we have one test remaining with a known invariant
violation. It's the same test as fixed here but for 32 bits ranges.

Acked-by: Eduard Zingerman <eddyz87@gmail.com>
Signed-off-by: Paul Chaignon <paul.chaignon@gmail.com>
Link: https://lore.kernel.org/r/ad046fb0016428f1a33c3b81617aabf31b51183f.1753695655.git.paul.chaignon@gmail.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/testing/selftests/bpf/progs/verifier_bounds.c

index 41f4389e08c707a34b929f8419b1b1d83f8d4b31..34b3f259b7a41c95e76b8cce00249a9006505a2c 100644 (file)
@@ -1066,7 +1066,7 @@ l0_%=:    r0 = 0;                                         \
 SEC("xdp")
 __description("bound check with JMP_JSLT for crossing 64-bit signed boundary")
 __success __retval(0)
-__flag(!BPF_F_TEST_REG_INVARIANTS) /* known invariants violation */
+__flag(BPF_F_TEST_REG_INVARIANTS)
 __naked void crossing_64_bit_signed_boundary_2(void)
 {
        asm volatile ("                                 \