linux/tools/testing/selftests/bpf/verifier
Kumar Kartikeya Dwivedi 792c0a345f selftests/bpf: Add test for strict BTF type check
Ensure that the edge case where first member type was matched
successfully even if it didn't match BTF type of register is caught and
rejected by the verifier.

Signed-off-by: Kumar Kartikeya Dwivedi <memxor@gmail.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20220424214901.2743946-14-memxor@gmail.com
2022-04-25 20:26:45 -07: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
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: Add test for strict BTF type check 2022-04-25 20:26:45 -07:00
cfg.c selftests/bpf: fix tests 2019-06-19 02:22:52 +02:00
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 bpf: Small BPF verifier log improvements 2022-03-03 16:54:10 +01: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 bpf: fix div64 overflow tests to properly detect errors 2019-06-13 23:07:00 +02:00
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
jit.c bpf, x64: Save bytes for DIV by reducing reg copies 2021-10-06 15:24:36 +02:00
jmp32.c bpf: Small BPF verifier log improvements 2022-03-03 16:54:10 +01:00
jset.c bpf, selftests: Adjust few selftest outcomes wrt unreachable code 2021-06-14 23:06:38 +02:00
jump.c bpf: add various test cases for backward jumps 2019-05-13 01:08:55 +02: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 selftests/bpf: Add verifier tests for kptr 2022-04-25 20:26:44 -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: Update selftests to reflect new error states 2021-04-16 23:52:15 +02: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 bpf: Small BPF verifier log improvements 2022-03-03 16:54:10 +01: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: Tag argument to be released in bpf_func_proto 2022-04-25 17:31:35 -07:00
regalloc.c selftests/bpf: Mark tests that require unaligned memory access 2020-11-18 17:45:35 -08:00
ringbuf.c bpf, selftests: Add ringbuf memory type confusion test 2022-01-19 01:27:03 +01: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: Small BPF verifier log improvements 2022-03-03 16:54:10 +01:00
spin_lock.c
stack_ptr.c bpf, selftests: Adjust few selftest result_unpriv outcomes 2021-05-25 22:08:53 +02:00
subreg.c selftests: bpf: complete sub-register zero extension checks 2019-05-29 13:31:05 +02:00
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 bpf: Selftests, verifier case for non null pointer map value branch 2020-05-21 17:44:25 -07:00
value_ptr_arith.c bpf: Small BPF verifier log improvements 2022-03-03 16:54:10 +01:00
value.c
var_off.c bpf: Small BPF verifier log improvements 2022-03-03 16:54:10 +01: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