linux/tools/testing/selftests/bpf/prog_tests
Kumar Kartikeya Dwivedi 04accf794b selftests/bpf: Add negative C tests for kptrs
This uses the newly added SEC("?foo") naming to disable autoload of
programs, and then loads them one by one for the object and verifies
that loading fails and matches the returned error string from verifier.
This is similar to already existing verifier tests but provides coverage
for BPF C.

Signed-off-by: Kumar Kartikeya Dwivedi <memxor@gmail.com>
Link: https://lore.kernel.org/r/20220511194654.765705-4-memxor@gmail.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2022-05-11 16:57:27 -07:00
..
.gitignore
align.c bpf: Small BPF verifier log improvements 2022-03-03 16:54:10 +01:00
arg_parsing.c selftests/bpf: Improve by-name subtest selection logic in prog_tests 2022-04-10 20:08:20 -07:00
atomic_bounds.c
atomics.c bpf, selftests: Use raw_tp program for atomic test 2022-02-28 16:28:40 +01:00
attach_probe.c selftests/bpf: Use target-less SEC() definitions in various tests 2022-04-28 23:46:04 +02:00
autoload.c
bind_perm.c bpf: selftests: Remove libcap usage from test_progs 2022-03-16 15:07:49 -07:00
bloom_filter_map.c
bpf_cookie.c selftest/bpf: The test cases of BPF cookie for fentry/fexit/fmod_ret/lsm. 2022-05-10 21:58:40 -07:00
bpf_iter.c selftests/bpf: Add bpf link iter test 2022-05-10 11:20:45 -07:00
bpf_iter_setsockopt.c
bpf_iter_setsockopt_unix.c
bpf_loop.c
bpf_mod_race.c selftests/bpf: Refactor prog_tests logging and test execution 2022-04-18 21:22:13 -07:00
bpf_nf.c
bpf_obj_id.c
bpf_tcp_ca.c selftests/bpf: Drop duplicate max/min definitions 2022-04-11 17:18:09 +02:00
bpf_verif_scale.c
btf.c selftests/bpf: Add tests for type tag order validation 2022-04-19 14:02:49 -07:00
btf_dedup_split.c
btf_dump.c selftests/bpf: Update btf_dump case for conflicting names 2022-03-01 13:41:48 +01:00
btf_endian.c
btf_map_in_map.c
btf_module.c
btf_skc_cls_ingress.c
btf_split.c
btf_tag.c selftests/bpf: Add a test for btf_type_tag "percpu" 2022-03-05 18:39:51 -08:00
btf_write.c
cg_storage_multi.c
cgroup_attach_autodetach.c selftests/bpf: Clean up array_size.cocci warnings 2022-03-15 17:03:10 +01:00
cgroup_attach_multi.c selftests/bpf: Clean up array_size.cocci warnings 2022-03-15 17:03:10 +01:00
cgroup_attach_override.c selftests/bpf: Clean up array_size.cocci warnings 2022-03-15 17:03:10 +01:00
cgroup_getset_retval.c
cgroup_link.c
cgroup_skb_sk_lookup.c
cgroup_v1v2.c
check_mtu.c
cls_redirect.c
connect_force_port.c
core_autosize.c
core_extern.c
core_kern.c
core_kern_overflow.c
core_read_macros.c
core_reloc.c selftests/bpf: Add bpf_core_field_offset() tests 2022-05-09 17:15:32 +02:00
core_retro.c
cpu_mask.c
custom_sec_handlers.c selftests/bpf: Add custom SEC() handling selftest 2022-03-05 09:38:15 -08:00
d_path.c
dummy_st_ops.c bpf: selftests: Test fentry tracing a struct_ops program 2022-03-30 19:31:30 -07:00
enable_stats.c
endian.c
exhandler.c
fentry_fexit.c
fentry_test.c
fexit_bpf2bpf.c
fexit_sleep.c
fexit_stress.c selftests/bpf: Switch fexit_stress to bpf_link_create() API 2022-04-23 00:37:02 +02:00
fexit_test.c
find_vma.c Improve stability of find_vma BPF test 2022-03-08 17:39:29 -08:00
flow_dissector.c
flow_dissector_load_bytes.c
flow_dissector_reattach.c
for_each.c selftests/bpf: Test for writes to map key from BPF helpers 2022-04-06 10:32:12 -07:00
get_branch_snapshot.c
get_func_args_test.c
get_func_ip_test.c
get_stack_raw_tp.c selftests/bpf: Fix clang compilation errors 2022-03-28 20:00:11 -07:00
get_stackid_cannot_attach.c
global_data.c selftests/bpf: Clean up array_size.cocci warnings 2022-03-15 17:03:10 +01:00
global_data_init.c
global_func_args.c
hash_large_key.c
hashmap.c
helper_restricted.c selftests/bpf: Use non-autoloaded programs in few tests 2022-04-19 13:48:20 -07:00
kfree_skb.c
kfunc_call.c
kprobe_multi_test.c selftests/bpf: fix a few clang compilation errors 2022-05-11 12:58:12 -07:00
ksyms.c
ksyms_btf.c selftests/bpf: Test passing rdonly mem to global func 2022-04-06 10:32:12 -07:00
ksyms_module.c
l4lb_all.c
legacy_printk.c
libbpf_probes.c
link_pinning.c
linked_funcs.c selftests/bpf: Add CO-RE relos and SEC("?...") to linked_funcs selftests 2022-04-26 15:41:46 -07:00
linked_maps.c
linked_vars.c
load_bytes_relative.c
log_buf.c bpf: Small BPF verifier log improvements 2022-03-03 16:54:10 +01:00
log_fixup.c selftests/bpf: Test bpf_map__set_autocreate() and related log fixup logic 2022-04-28 20:03:29 -07:00
lookup_and_delete.c
map_init.c
map_kptr.c selftests/bpf: Add negative C tests for kptrs 2022-05-11 16:57:27 -07:00
map_lock.c
map_ptr.c
metadata.c
migrate_reuseport.c
mmap.c
modify_return.c
module_attach.c
netcnt.c selftests/bpf: Use bpf_num_possible_cpus() in per-cpu map allocations 2022-04-06 10:15:53 -07:00
netns_cookie.c
ns_current_pid_tgid.c
obj_name.c selftests/bpf: Clean up array_size.cocci warnings 2022-03-15 17:03:10 +01:00
pe_preserve_elems.c
perf_branches.c Improve perf related BPF tests (sample_freq issue) 2022-03-08 17:39:28 -08:00
perf_buffer.c
perf_event_stackmap.c
perf_link.c Improve perf related BPF tests (sample_freq issue) 2022-03-08 17:39:28 -08:00
pinning.c
pkt_access.c
pkt_md_access.c
probe_read_user_str.c
probe_user.c
prog_array_init.c
prog_run_opts.c
prog_tests_framework.c selftests/bpf: Refactor prog_tests logging and test execution 2022-04-18 21:22:13 -07:00
queue_stack_map.c
raw_tp_test_run.c
raw_tp_writable_reject_nbd_invalid.c
raw_tp_writable_test_run.c
rdonly_maps.c
recursion.c
reference_tracking.c selftests/bpf: Use non-autoloaded programs in few tests 2022-04-19 13:48:20 -07:00
resolve_btfids.c
ringbuf.c
ringbuf_multi.c selftests/bpf: Test libbpf's ringbuf size fix up logic 2022-05-09 17:15:32 +02:00
section_names.c
select_reuseport.c
send_signal.c selftests/bpf: Fix a clang compilation error for send_signal.c 2022-03-11 22:18:13 +01:00
send_signal_sched_switch.c
signal_pending.c
sk_assign.c
sk_lookup.c
sk_storage_tracing.c
skb_ctx.c
skb_helpers.c
skb_load_bytes.c selftests/bpf: Add test for skb_load_bytes 2022-04-20 23:48:34 +02:00
skc_to_unix_sock.c
skeleton.c
snprintf.c selftests/bpf: Drop duplicate max/min definitions 2022-04-11 17:18:09 +02:00
snprintf_btf.c
sock_fields.c
socket_cookie.c
sockmap_basic.c
sockmap_ktls.c
sockmap_listen.c
sockopt.c
sockopt_inherit.c
sockopt_multi.c
sockopt_qos_to_cc.c
sockopt_sk.c
spinlock.c
stack_var_off.c
stacktrace_build_id.c
stacktrace_build_id_nmi.c
stacktrace_map.c
stacktrace_map_raw_tp.c
stacktrace_map_skip.c selftests/bpf: Test skipping stacktrace 2022-03-20 19:16:50 -07:00
static_linked.c
subprogs.c selftests/bpf: Test subprog jit when toggle bpf_jit_harden repeatedly 2022-03-16 15:13:36 -07:00
subskeleton.c selftests/bpf: Test subskeleton functionality 2022-03-17 23:12:48 -07:00
syscall.c
tailcalls.c
task_fd_query_rawtp.c
task_fd_query_tp.c
task_local_storage.c
task_pt_regs.c
tc_bpf.c
tc_redirect.c selftests/bpf: Drop duplicate max/min definitions 2022-04-11 17:18:09 +02:00
tcp_estats.c
tcp_hdr_options.c
tcp_rtt.c
tcpbpf_user.c
test_bpf_syscall_macro.c
test_bpffs.c
test_bprm_opts.c
test_global_funcs.c selftests/bpf: Test passing rdonly mem to global func 2022-04-06 10:32:12 -07:00
test_ima.c selftests/bpf: Check that bpf_kernel_read_file() denies reading IMA policy 2022-03-10 18:57:55 -08:00
test_local_storage.c
test_lsm.c
test_overhead.c
test_profiler.c
test_skb_pkt_end.c
test_strncmp.c selftests/bpf: Use non-autoloaded programs in few tests 2022-04-19 13:48:20 -07:00
test_tunnel.c selftests/bpf: fix a few clang compilation errors 2022-05-11 12:58:12 -07:00
timer.c
timer_crash.c
timer_mim.c
tp_attach_query.c
trace_ext.c
trace_printk.c
trace_vprintk.c
trampoline_count.c
udp_limit.c
uprobe_autoattach.c selftests/bpf: Fix prog_tests uprobe_autoattach compilation error 2022-04-21 18:48:04 +02:00
usdt.c selftests/bpf: Add urandom_read shared lib and USDTs 2022-04-05 13:16:08 -07:00
varlen.c
verif_stats.c
vmlinux.c
xdp.c
xdp_adjust_frags.c
xdp_adjust_tail.c
xdp_attach.c
xdp_bonding.c
xdp_bpf2bpf.c
xdp_context_test_run.c
xdp_cpumap_attach.c
xdp_devmap_attach.c
xdp_do_redirect.c selftests/bpf: Add a test for maximum packet size in xdp_do_redirect 2022-03-11 22:01:26 +01:00
xdp_info.c
xdp_link.c
xdp_noinline.c
xdp_perf.c
xdpwall.c