linux/tools/testing/selftests/bpf/verifier
Eduard Zingerman efd6286ff7 selftests/bpf: test case for relaxed prunning of active_lock.id
Check that verifier.c:states_equal() uses check_ids() to match
consistent active_lock/map_value configurations. This allows to prune
states with active spin locks even if numerical values of
active_lock ids do not match across compared states.

Signed-off-by: Eduard Zingerman <eddyz87@gmail.com>
Link: https://lore.kernel.org/r/20221209135733.28851-8-eddyz87@gmail.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2022-12-10 13:36:22 -08:00
..
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
and.c bpf, selftests: Adjust few selftest outcomes wrt unreachable code 2021-06-14 23:06:38 +02:00
array_access.c bpf: Fix propagation of bounds from 64-bit min/max into 32-bit and var_off. 2021-11-01 18:05:11 -07:00
atomic_and.c bpf, x86: Fix BPF_FETCH atomic and/or/xor with r0 as src 2021-02-22 18:03:11 +01:00
atomic_bounds.c bpf: Propagate stack bounds to registers in atomics w/ BPF_FETCH 2021-02-02 18:23:29 -08:00
atomic_cmpxchg.c bpf, selftests: Update test case for atomic cmpxchg on r0 with pointer 2021-12-14 19:33:06 -08:00
atomic_fetch_add.c bpf: Add tests for new BPF atomic operations 2021-01-14 18:34:29 -08:00
atomic_fetch.c bpf, selftests: Add test case for atomic fetch on spilled pointer 2021-12-14 19:33:06 -08:00
atomic_invalid.c bpf: Small BPF verifier log improvements 2022-03-03 16:54:10 +01:00
atomic_or.c bpf: Explicitly zero-extend R0 after 32-bit cmpxchg 2021-03-04 19:06:03 -08:00
atomic_xchg.c bpf: Add tests for new BPF atomic operations 2021-01-14 18:34:29 -08:00
atomic_xor.c selftests/bpf: Fix endianness issues in atomic tests 2021-02-10 11:55:22 -08:00
basic_call.c
basic_instr.c selftests: bpf: add tests for shifts by zero 2019-07-03 11:14:28 +02:00
basic_stack.c selftest/bpf: Adjust expected verifier errors 2021-02-10 10:44:19 -08:00
basic_stx_ldx.c
basic.c selftests/bpf: Fix test_verifier after introducing resolve_pseudo_ldimm64 2020-10-06 20:16:57 -07:00
bounds_deduction.c bpf: Disallow negative offset in check_ptr_off_reg 2022-03-05 15:29:35 -08:00
bounds_mix_sign_unsign.c bpf: Update selftests to reflect new error states 2021-04-16 23:52:15 +02:00
bounds.c bpf: Small BPF verifier log improvements 2022-03-03 16:54:10 +01:00
bpf_get_stack.c bpf/selftests: Add bpf_get_task_stack retval bounds verifier test 2021-04-19 18:23:33 -07:00
bpf_loop_inline.c selftests/bpf: Fix test_verifier failed test in unprivileged mode 2022-07-21 21:03:25 -07:00
btf_ctx_access.c selftests/bpf: Add test to access int ptr argument in tracing program 2021-12-13 09:24:22 -08:00
calls.c selftests/bpf: verify states_equal() maintains idmap across all frames 2022-12-10 13:20:53 -08:00
cfg.c
cgroup_inv_retcode.c
cgroup_skb.c
cgroup_storage.c
const_or.c selftest/bpf: Adjust expected verifier errors 2021-02-10 10:44:19 -08:00
ctx_sk_lookup.c selftests/bpf: Add tests for accessing ingress_ifindex in bpf_sk_lookup 2021-11-10 16:29:59 -08:00
ctx_sk_msg.c
ctx_skb.c selftests/bpf: Use __BYTE_ORDER__ 2021-10-25 20:39:42 -07:00
ctx.c bpf: Disallow negative offset in check_ptr_off_reg 2022-03-05 15:29:35 -08:00
d_path.c selftests/bpf: Add verifier test for d_path helper 2020-08-25 15:41:15 -07:00
dead_code.c selftests, bpf: Test that dead ldx_w insns are accepted 2021-08-13 17:46:26 +02:00
direct_packet_access.c selftests/bpf: test cases for regsafe() bug skipping check_id() 2022-12-10 13:20:52 -08:00
direct_stack_access_wraparound.c
direct_value_access.c selftests/bpf: Mark tests that require unaligned memory access 2020-11-18 17:45:35 -08:00
div0.c
div_overflow.c
event_output.c selftests/bpf: Fix cgroup sockopt verifier test 2020-07-11 01:32:15 +02:00
helper_access_var_len.c bpf: Small BPF verifier log improvements 2022-03-03 16:54:10 +01:00
helper_packet_access.c
helper_restricted.c selftests/bpf: Add tests for restricted helpers 2021-11-15 20:37:11 -08:00
helper_value_access.c bpf, selftests: Use bpf_probe_read_kernel 2020-06-02 21:04:04 +02:00
int_ptr.c selftest/bpf: Adjust expected verifier errors 2021-02-10 10:44:19 -08:00
jeq_infer_not_null.c selftests/bpf: check nullness propagation for reg to reg comparisons 2022-11-15 17:38:36 -08:00
jit.c bpf: add selftests for lsh, rsh, arsh with reg operand 2022-10-19 16:53:51 -07:00
jmp32.c bpf, selftests: Add verifier test case for jmp32's jeq/jne 2022-07-01 12:56:27 -07:00
jset.c bpf, selftests: Adjust few selftest outcomes wrt unreachable code 2021-06-14 23:06:38 +02:00
jump.c bpf, selftests: Add verifier test case for imm=0,umin=0,umax=1 scalar 2022-07-01 12:56:27 -07:00
junk_insn.c
ld_abs.c
ld_dw.c
ld_imm64.c selftests/bpf: Fix test_verifier after introducing resolve_pseudo_ldimm64 2020-10-06 20:16:57 -07:00
ld_ind.c
leak_ptr.c bpf: Rename BPF_XADD and prepare to encode other atomics in .imm 2021-01-14 18:34:29 -08:00
loops1.c bpf: Add loop test case with 32 bit reg comparison against 0 2019-10-04 12:27:36 -07:00
lwt.c selftests/bpf: Use __BYTE_ORDER__ 2021-10-25 20:39:42 -07:00
map_in_map.c selftests/bpf: Check map in map pruning 2021-11-12 17:23:04 -08:00
map_kptr.c bpf: Prepare prog_test_struct kfuncs for runtime tests 2022-05-11 16:57:27 -07:00
map_ptr_mixing.c bpf: Support access to bpf map fields 2020-06-22 22:22:58 +02:00
map_ptr.c bpf: Tighten ptr_to_btf_id checks. 2022-11-30 15:33:48 -08:00
map_ret_val.c
masking.c
meta_access.c bpf: Rename BPF_XADD and prepare to encode other atomics in .imm 2021-01-14 18:34:29 -08:00
perf_event_sample_period.c selftests/bpf: Use __BYTE_ORDER__ 2021-10-25 20:39:42 -07:00
precise.c selftests/bpf: Add regression test for pruning fix 2022-08-25 12:07:45 -07:00
prevent_map_lookup.c selftests/bpf: Test that lookup on SOCKMAP/SOCKHASH is allowed 2020-04-29 23:30:59 +02:00
raw_stack.c bpf: Small BPF verifier log improvements 2022-03-03 16:54:10 +01:00
raw_tp_writable.c selftests/bpf: Mark tests that require unaligned memory access 2020-11-18 17:45:35 -08:00
ref_tracking.c bpf: Allow trusted pointers to be passed to KF_TRUSTED_ARGS kfuncs 2022-11-20 09:16:21 -08:00
regalloc.c selftests/bpf: Mark tests that require unaligned memory access 2020-11-18 17:45:35 -08:00
ringbuf.c bpf: Rework check_func_arg_reg_off 2022-12-08 18:39:06 -08:00
runtime_jit.c bpf: Add further test_verifier cases for record_func_key 2019-12-19 13:39:22 -08:00
scale.c
search_pruning.c bpf: Small BPF verifier log improvements 2022-03-03 16:54:10 +01:00
sock.c bpf: Tag argument to be released in bpf_func_proto 2022-04-25 17:31:35 -07:00
spill_fill.c bpf: Rename MEM_ALLOC to MEM_RINGBUF 2022-11-14 21:52:45 -08:00
spin_lock.c selftests/bpf: test case for relaxed prunning of active_lock.id 2022-12-10 13:36:22 -08:00
stack_ptr.c bpf, selftests: Adjust few selftest result_unpriv outcomes 2021-05-25 22:08:53 +02:00
subreg.c
uninit.c
unpriv.c bpf: Small BPF verifier log improvements 2022-03-03 16:54:10 +01:00
value_adj_spill.c
value_illegal_alu.c bpf: Small BPF verifier log improvements 2022-03-03 16:54:10 +01:00
value_or_null.c selftests/bpf: test cases for regsafe() bug skipping check_id() 2022-12-10 13:20:52 -08:00
value_ptr_arith.c bpf: Small BPF verifier log improvements 2022-03-03 16:54:10 +01:00
value.c
var_off.c selftests/bpf: Fix spelling mistake "unpriviledged" -> "unprivileged" 2022-09-30 15:08:05 -07:00
wide_access.c selftests/bpf: Mark tests that require unaligned memory access 2020-11-18 17:45:35 -08:00
xadd.c bpf: Rename BPF_XADD and prepare to encode other atomics in .imm 2021-01-14 18:34:29 -08:00
xdp_direct_packet_access.c bpf: Add selftests to cover packet access corner cases 2021-12-08 15:42:26 +01:00
xdp.c