mirror-linux/tools/testing/selftests/bpf/verifier
Martin KaFai Lau c08455dec5 selftests/bpf: Verifier test on refill from a smaller spill
This patch adds a verifier test to ensure the verifier can read 8 bytes
from the stack after two 32bit write at fp-4 and fp-8. The test is similar
to the reported case from bcc [0].

  [0] https://github.com/iovisor/bcc/pull/3683

Signed-off-by: Martin KaFai Lau <kafai@fb.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Yonghong Song <yhs@fb.com>
Link: https://lore.kernel.org/bpf/20211102064541.316414-1-kafai@fb.com
2021-11-03 15:55:43 +01:00
..
.gitignore
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 selftests/bpf: Some more atomic tests 2021-10-20 18:09:08 -07:00
atomic_fetch.c selftests/bpf: Some more atomic tests 2021-10-20 18:09:08 -07:00
atomic_fetch_add.c bpf: Add tests for new BPF atomic operations 2021-01-14 18:34:29 -08:00
atomic_invalid.c selftests/bpf: Some more atomic tests 2021-10-20 18:09:08 -07: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.c
basic_call.c
basic_instr.c
basic_stack.c selftest/bpf: Adjust expected verifier errors 2021-02-10 10:44:19 -08:00
basic_stx_ldx.c
bounds.c bpf, selftests: Adjust few selftest outcomes wrt unreachable code 2021-06-14 23:06:38 +02:00
bounds_deduction.c bpf: Update selftests to reflect new error states 2021-04-16 23:52:15 +02:00
bounds_mix_sign_unsign.c bpf: Update selftests to reflect new error states 2021-04-16 23:52:15 +02:00
bpf_get_stack.c bpf/selftests: Add bpf_get_task_stack retval bounds verifier test 2021-04-19 18:23:33 -07:00
calls.c bpf: selftests: Add selftests for module kfunc support 2021-10-05 17:07:42 -07: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.c bpf: Rename BPF_XADD and prepare to encode other atomics in .imm 2021-01-14 18:34:29 -08:00
ctx_sk_lookup.c selftests: bpf: Don't run sk_lookup in verifier tests 2021-03-04 19:11:30 -08:00
ctx_sk_msg.c
ctx_skb.c selftests/bpf: Use __BYTE_ORDER__ 2021-10-25 20:39:42 -07:00
d_path.c
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: Rename BPF_XADD and prepare to encode other atomics in .imm 2021-01-14 18:34:29 -08:00
direct_stack_access_wraparound.c
direct_value_access.c
div0.c
div_overflow.c
event_output.c
helper_access_var_len.c selftest/bpf: Adjust expected verifier errors 2021-02-10 10:44:19 -08:00
helper_packet_access.c
helper_value_access.c
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, selftests: Adjust few selftest outcomes wrt unreachable code 2021-06-14 23:06:38 +02:00
jset.c bpf, selftests: Adjust few selftest outcomes wrt unreachable code 2021-06-14 23:06:38 +02:00
jump.c
junk_insn.c
ld_abs.c
ld_dw.c
ld_imm64.c
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
lwt.c selftests/bpf: Use __BYTE_ORDER__ 2021-10-25 20:39:42 -07:00
map_in_map.c
map_ptr.c bpf: Update selftests to reflect new error states 2021-04-16 23:52:15 +02:00
map_ptr_mixing.c
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
prevent_map_lookup.c
raw_stack.c selftest/bpf: Adjust expected verifier errors 2021-02-10 10:44:19 -08:00
raw_tp_writable.c
ref_tracking.c
regalloc.c
runtime_jit.c
scale.c
search_pruning.c
sock.c
spill_fill.c selftests/bpf: Verifier test on refill from a smaller spill 2021-11-03 15:55:43 +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
uninit.c
unpriv.c bpf, selftests: Adjust few selftest outcomes wrt unreachable code 2021-06-14 23:06:38 +02:00
value.c
value_adj_spill.c
value_illegal_alu.c bpf: Rename BPF_XADD and prepare to encode other atomics in .imm 2021-01-14 18:34:29 -08:00
value_or_null.c
value_ptr_arith.c bpf, selftests: Add test cases for pointer alu from multiple paths 2021-07-16 16:57:07 +02:00
var_off.c selftest/bpf: Verifier tests for var-off access 2021-02-10 10:44:19 -08:00
wide_access.c
xadd.c bpf: Rename BPF_XADD and prepare to encode other atomics in .imm 2021-01-14 18:34:29 -08:00
xdp.c
xdp_direct_packet_access.c