linux-stable/tools/testing/selftests/bpf/prog_tests
Quentin Monnet 369e955b3d tools: Free BTF objects at various locations
Make sure to call btf__free() (and not simply free(), which does not
free all pointers stored in the struct) on pointers to struct btf
objects retrieved at various locations.

These were found while updating the calls to btf__get_from_id().

Fixes: 999d82cbc0 ("tools/bpf: enhance test_btf file testing to test func info")
Fixes: 254471e57a ("tools/bpf: bpftool: add support for func types")
Fixes: 7b612e291a ("perf tools: Synthesize PERF_RECORD_* for loaded BPF programs")
Fixes: d56354dc49 ("perf tools: Save bpf_prog_info and BTF of new BPF programs")
Fixes: 47c09d6a9f ("bpftool: Introduce "prog profile" command")
Fixes: fa853c4b83 ("perf stat: Enable counting events for BPF programs")
Signed-off-by: Quentin Monnet <quentin@isovalent.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20210729162028.29512-5-quentin@isovalent.com
2021-07-29 17:09:28 -07:00
..
.gitignore
align.c selftests/bpf: Fix "dubious pointer arithmetic" test 2020-12-10 13:11:30 -08:00
atomic_bounds.c selftests/bpf: Add missing cleanup in atomic_bounds test 2021-02-08 17:55:01 -08:00
atomics.c selftests/bpf: Convert atomics test to light skeleton. 2021-05-19 00:41:56 +02:00
attach_probe.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
autoload.c
bind_perm.c selftests/bpf: Verify that rebinding to port < 1024 from BPF works 2021-01-27 18:18:15 -08:00
bpf_iter.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
bpf_iter_setsockopt.c bpf: selftest: Test batching and bpf_(get|set)sockopt in bpf tcp iter 2021-07-23 16:45:17 -07:00
bpf_obj_id.c
bpf_tcp_ca.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
bpf_verif_scale.c selftests/bpf: Add a verifier scale test with unknown bounded loop 2021-03-04 16:44:00 +01:00
btf.c tools: Free BTF objects at various locations 2021-07-29 17:09:28 -07:00
btf_dedup_split.c selftests/bpf: Add split BTF dedup selftests 2020-11-05 18:37:31 -08:00
btf_dump.c selftests/bpf: Add __int128-specific tests for typed data dump 2021-07-20 13:49:25 -07:00
btf_endian.c selftests/bpf: Add remaining ASSERT_xxx() variants 2021-04-26 18:37:13 -07:00
btf_map_in_map.c selftests/bpf: Sync RCU before unloading bpf_testmod 2021-01-12 17:23:47 -08:00
btf_skc_cls_ingress.c bpf: selftest: Use static globals in tcp_hdr_options and btf_skc_cls_ingress 2020-11-09 16:18:36 -08:00
btf_split.c selftests/bpf: Add split BTF basic test 2020-11-05 18:37:30 -08:00
btf_write.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
cg_storage_multi.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
cgroup_attach_autodetach.c
cgroup_attach_multi.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
cgroup_attach_override.c
cgroup_link.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
cgroup_skb_sk_lookup.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
check_mtu.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
cls_redirect.c bpf: Remove extra lock_sock for TCP_ZEROCOPY_RECEIVE 2021-01-20 14:23:00 -08:00
connect_force_port.c
core_autosize.c selftests/bpf: Switch existing selftests to using open_opts for custom BTF 2021-07-16 13:22:47 -07:00
core_extern.c
core_read_macros.c selftests/bpf: Add tests for user- and non-CO-RE BPF_CORE_READ() variants 2021-01-08 13:39:24 -08:00
core_reloc.c selftests/bpf: Switch existing selftests to using open_opts for custom BTF 2021-07-16 13:22:47 -07:00
core_retro.c
cpu_mask.c
d_path.c
enable_stats.c
endian.c
fentry_fexit.c selftests/bpf: Convert few tests to light skeleton. 2021-05-19 00:41:44 +02:00
fentry_test.c selftests/bpf: Convert few tests to light skeleton. 2021-05-19 00:41:44 +02:00
fexit_bpf2bpf.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
fexit_sleep.c selftests/bpf: Convert few tests to light skeleton. 2021-05-19 00:41:44 +02:00
fexit_stress.c bpf: Add per-program recursion prevention mechanism 2021-02-11 16:19:13 +01:00
fexit_test.c selftests/bpf: Convert few tests to light skeleton. 2021-05-19 00:41:44 +02:00
flow_dissector.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
flow_dissector_load_bytes.c
flow_dissector_reattach.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
for_each.c selftests/bpf: Add arraymap test for bpf_for_each_map_elem() helper 2021-02-26 13:23:53 -08:00
get_func_ip_test.c libbpf: Allow decimal offset for kprobes 2021-07-22 20:09:16 -07:00
get_stack_raw_tp.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
get_stackid_cannot_attach.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
global_data.c
global_data_init.c
global_func_args.c selftests/bpf: Add unit tests for pointers in global functions 2021-02-12 17:37:23 -08:00
hash_large_key.c bpf: Lift hashtab key_size limit 2020-11-05 20:04:46 -08:00
hashmap.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
kfree_skb.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
kfunc_call.c selftests/bpf: Convert few tests to light skeleton. 2021-05-19 00:41:44 +02:00
ksyms.c
ksyms_btf.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
ksyms_module.c selftests/bpf: Convert few tests to light skeleton. 2021-05-19 00:41:44 +02:00
l4lb_all.c
link_pinning.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
linked_funcs.c selftests/bpf: Add function linking selftest 2021-04-23 14:05:27 -07:00
linked_maps.c selftests/bpf: Add map linking selftest 2021-04-23 14:05:27 -07:00
linked_vars.c selftests/bpf: Add global variables linking selftest 2021-04-23 14:05:27 -07:00
load_bytes_relative.c
lookup_and_delete.c selftests/bpf: Add bpf_lookup_and_delete_elem tests 2021-05-24 13:30:52 -07:00
map_init.c bpf: Zero-fill re-used per-cpu map element 2020-11-05 19:55:57 -08:00
map_lock.c
map_ptr.c selftests/bpf: Pass page size from userspace in map_ptr 2021-04-08 23:54:47 -07:00
metadata.c
migrate_reuseport.c selftests/bpf: Fix selftests build with old system-wide headers 2021-06-17 13:05:10 +02:00
mmap.c selftests/bpf: mmap: Use runtime page size 2021-04-08 23:54:48 -07:00
modify_return.c
module_attach.c selftests/bpf: Test that module can't be unloaded with attached trampoline 2021-04-25 21:09:02 -07:00
ns_current_pid_tgid.c selftests/bpf: Silence clang compilation warnings 2021-04-15 16:50:22 -07:00
obj_name.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
pe_preserve_elems.c
perf_branches.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
perf_buffer.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
perf_event_stackmap.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
pinning.c libbpf: Add bpf_map__pin_path function 2021-07-23 16:57:03 -07:00
pkt_access.c
pkt_md_access.c
probe_read_user_str.c selftest/bpf: Test bpf_probe_read_user_str() strips trailing bytes after NUL 2020-11-19 11:58:15 -08:00
probe_user.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
prog_run_xattr.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
queue_stack_map.c
raw_tp_test_run.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
raw_tp_writable_reject_nbd_invalid.c
raw_tp_writable_test_run.c
rdonly_maps.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
recursion.c selftests/bpf: Improve recursion selftest 2021-02-11 16:19:24 +01:00
reference_tracking.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
resolve_btfids.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
ringbuf.c selftests/bpf: Fix ringbuf test fetching map FD 2021-06-17 18:23:55 -07:00
ringbuf_multi.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
section_names.c
select_reuseport.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
send_signal.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
send_signal_sched_switch.c
signal_pending.c
sk_assign.c
sk_lookup.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
sk_storage_tracing.c bpf: selftest: Use bpf_sk_storage in FENTRY/FEXIT/RAW_TP 2020-11-12 18:39:28 -08:00
skb_ctx.c
skb_helpers.c
skeleton.c selftests/bpf: Stop using static variables for passing data to/from user-space 2021-05-11 15:07:17 -07:00
snprintf.c selftests/bpf: Fix the snprintf test 2021-04-30 10:36:59 -07:00
snprintf_btf.c selftests/bpf: Add remaining ASSERT_xxx() variants 2021-04-26 18:37:13 -07:00
sock_fields.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
socket_cookie.c selftests/bpf: Add a selftest for the tracing bpf_get_socket_cookie 2021-02-11 17:44:41 -08:00
sockmap_basic.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
sockmap_ktls.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
sockmap_listen.c selftests/bpf: Add test cases for redirection between udp and unix 2021-07-15 18:17:51 -07:00
sockopt.c
sockopt_inherit.c
sockopt_multi.c selftests/bpf: Fix error return code in run_getsockopt_test() 2020-11-16 22:19:07 +01:00
sockopt_sk.c selftests/bpf: Pass page size from userspace in sockopt_sk 2021-04-08 23:54:47 -07:00
spinlock.c
stack_var_off.c selftest/bpf: Add test for var-offset stack access 2021-02-10 11:05:34 -08:00
stacktrace_build_id.c
stacktrace_build_id_nmi.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
stacktrace_map.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
stacktrace_map_raw_tp.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
static_linked.c selftests/bpf: Validate skeleton gen handles skipped fields 2021-05-13 17:23:57 -07:00
subprogs.c libbpf: Don't attempt to load unused subprog as an entry-point BPF program 2020-11-09 22:15:23 +01:00
syscall.c selftests/bpf: Test for btf_load command. 2021-05-19 00:33:40 +02:00
tailcalls.c bpf: Selftest to verify mixing bpf2bpf calls and tailcalls with insn patch 2021-07-09 12:08:40 +02:00
task_fd_query_rawtp.c
task_fd_query_tp.c
task_local_storage.c selftests/bpf: Test deadlock from recursive bpf_task_storage_[get|delete] 2021-02-26 11:51:48 -08:00
tc_bpf.c libbpf: Add selftests for TC-BPF management API 2021-05-17 17:52:20 +02:00
tc_redirect.c selftests/bpf: Use ping6 only if available in tc_redirect 2021-07-26 16:04:38 -07:00
tcp_estats.c
tcp_hdr_options.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
tcp_rtt.c
tcpbpf_user.c selftests/bpf: Add Userspace tests for TCP_WINDOW_CLAMP 2020-12-03 17:23:24 -08:00
test_bpffs.c
test_bprm_opts.c bpf: Add tests for bpf_bprm_opts_set helper 2020-11-18 01:36:27 +01:00
test_global_funcs.c selftests/bpf: Add unit tests for pointers in global functions 2021-02-12 17:37:23 -08:00
test_ima.c selftests/bpf: Better error messages for ima_setup.sh failures 2021-03-25 18:39:51 -07:00
test_local_storage.c selftests/bpf: Fix a compiler warning in local_storage test 2021-02-02 21:21:55 -08:00
test_lsm.c selftests/bpf: Use ASSERT macros in lsm test 2021-04-25 21:09:02 -07:00
test_overhead.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
test_profiler.c selftests/bpf: Add profiler test 2020-10-09 22:03:06 +02:00
test_skb_pkt_end.c selftests/bpf: Add skb_pkt_end test 2020-11-13 01:42:11 +01:00
timer.c selftests/bpf: Add bpf_timer test. 2021-07-15 22:31:11 +02:00
timer_mim.c selftests/bpf: Add a test with bpf_timer in inner map. 2021-07-15 22:31:11 +02:00
tp_attach_query.c
trace_ext.c
trace_printk.c selftests/bpf: Convert test trace_printk to lskel. 2021-05-19 00:42:20 +02:00
trampoline_count.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
udp_limit.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
varlen.c
vmlinux.c
xdp.c
xdp_adjust_tail.c
xdp_attach.c
xdp_bpf2bpf.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
xdp_context_test_run.c selftests/bpf: Add test for xdp_md context in BPF_PROG_TEST_RUN 2021-07-07 19:51:13 -07:00
xdp_cpumap_attach.c bpf: Tidy xdp attach selftests 2021-07-07 20:01:45 -07:00
xdp_devmap_attach.c bpf: Tidy xdp attach selftests 2021-07-07 20:01:45 -07:00
xdp_info.c
xdp_link.c selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
xdp_noinline.c
xdp_perf.c