mirror_ubuntu-kernels/tools/testing/selftests/bpf/prog_tests
Andrii Nakryiko 46ba0e49b6 bpf: fix multi-uprobe PID filtering logic
Current implementation of PID filtering logic for multi-uprobes in
uprobe_prog_run() is filtering down to exact *thread*, while the intent
for PID filtering it to filter by *process* instead. The check in
uprobe_prog_run() also differs from the analogous one in
uprobe_multi_link_filter() for some reason. The latter is correct,
checking task->mm, not the task itself.

Fix the check in uprobe_prog_run() to perform the same task->mm check.

While doing this, we also update get_pid_task() use to use PIDTYPE_TGID
type of lookup, given the intent is to get a representative task of an
entire process. This doesn't change behavior, but seems more logical. It
would hold task group leader task now, not any random thread task.

Last but not least, given multi-uprobe support is half-broken due to
this PID filtering logic (depending on whether PID filtering is
important or not), we need to make it easy for user space consumers
(including libbpf) to easily detect whether PID filtering logic was
already fixed.

We do it here by adding an early check on passed pid parameter. If it's
negative (and so has no chance of being a valid PID), we return -EINVAL.
Previous behavior would eventually return -ESRCH ("No process found"),
given there can't be any process with negative PID. This subtle change
won't make any practical change in behavior, but will allow applications
to detect PID filtering fixes easily. Libbpf fixes take advantage of
this in the next patch.

Cc: stable@vger.kernel.org
Acked-by: Jiri Olsa <jolsa@kernel.org>
Fixes: b733eeade4 ("bpf: Add pid filter support for uprobe_multi link")
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/r/20240521163401.3005045-2-andrii@kernel.org
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2024-05-25 10:46:02 -07:00
..
.gitignore
access_variable_array.c selftests/bpf: Add test to access integer type of variable array 2023-04-19 21:29:39 -07:00
align.c bpf: omit default off=0 and imm=0 in register state log 2023-11-18 11:39:59 -08:00
arena_atomics.c selftests/bpf: Add tests for atomics in bpf_arena. 2024-04-09 10:24:26 -07:00
arena_htab.c selftests/bpf: Remove hard coded PAGE_SIZE macro. 2024-03-15 14:24:03 -07:00
arena_list.c selftests/bpf: Remove hard coded PAGE_SIZE macro. 2024-03-15 14:24:03 -07:00
arg_parsing.c selftests/bpf: Test_progs can read test lists from file 2023-05-01 15:30:02 -07:00
assign_reuse.c selftests/bpf: Test that SO_REUSEPORT can be used with sk_assign helper 2023-07-25 14:02:47 -07:00
async_stack_depth.c selftests/bpf: Add selftest for check_stack_max_depth bug 2023-07-05 19:14:54 -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: Add test for legacy/perf kprobe/uprobe attach mode 2023-03-06 09:38:08 -08:00
autoattach.c selftests/bpf: Tests libbpf autoattach APIs 2022-08-17 09:42:07 -07:00
autoload.c
bad_struct_ops.c selftests/bpf: Verify struct_ops autoload/autocreate sync 2024-03-06 15:18:15 -08:00
bind_perm.c selftests/bpf: Replaces the usage of CHECK calls for ASSERTs in bind_perm 2023-11-21 10:43:03 -08:00
bloom_filter_map.c bpf: Check bloom filter map value size 2024-03-27 09:56:17 -07:00
bpf_cookie.c selftests/bpf: add raw_tp/tp_btf BPF cookie subtests 2024-03-19 23:05:34 -07:00
bpf_iter_setsockopt_unix.c selftest/bpf: Test batching and bpf_(get|set)sockopt in bpf unix iter. 2022-01-18 15:45:06 -08:00
bpf_iter_setsockopt.c selfetest/bpf: Make some tests serial 2021-10-08 15:17:00 -07:00
bpf_iter.c selftests/bpf: Add assert for user stacks in test_task_stack 2023-11-13 18:39:38 -08:00
bpf_loop.c selftests/bpf: BPF test_prog selftests for bpf_loop inlining 2022-06-20 17:40:52 -07:00
bpf_mod_race.c selftests/bpf: Use un/load_bpf_testmod functions in tests 2023-05-16 22:09:23 -07:00
bpf_nf.c selftests/bpf: Fix bpf_nf failure upon test rerun 2023-06-30 10:35:22 +02:00
bpf_obj_id.c selftests/bpf: Replaces the usage of CHECK calls for ASSERTs in bpf_obj_id 2023-11-21 10:45:24 -08:00
bpf_obj_pinning.c selftests/bpf: Fix flaky cgroup_iter_sleepable subtest 2023-08-30 08:45:05 +02:00
bpf_tcp_ca.c selftests/bpf: Add test for the use of new args in cong_control 2024-05-02 16:32:04 -07:00
bpf_verif_scale.c selftests/bpf: detect testing prog flags support 2024-01-23 14:40:22 -08:00
btf_dedup_split.c selftests/bpf: Tests for btf_dedup_resolve_fwds 2022-11-09 20:45:21 -08:00
btf_dump.c selftests/bpf: Adjust btf_dump test to reflect recent change in file_operations 2024-05-17 01:50:11 +02:00
btf_endian.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
btf_map_in_map.c selftests/bpf: Fix flaky test btf_map_in_map/lookup_update 2024-03-25 17:25:54 +01:00
btf_module.c
btf_skc_cls_ingress.c selftests/bpf: Avoid pinning prog when attaching to tc ingress in btf_skc_cls_ingress 2022-11-30 22:47:43 +01:00
btf_split.c selftests/bpf: Update btf_dump__new() uses to v1.0+ variant 2021-11-11 16:54:06 -08:00
btf_tag.c selftests/bpf: Add a test for btf_type_tag "percpu" 2022-03-05 18:39:51 -08:00
btf_write.c selftests/bpf: Test new enum kflag and enum64 API functions 2022-06-07 10:20:43 -07:00
btf.c selftests/bpf: Test cases for '?' in BTF names 2024-03-06 15:18:16 -08:00
cb_refs.c selftests/bpf: Add tests for reference state fixes for callbacks 2022-08-24 17:54:40 -07:00
cg_storage_multi.c selftests/bpf: Wait for receive in cg_storage_multi test 2023-04-05 14:44:07 -07:00
cgroup1_hierarchy.c selftests/bpf: Run cgroup1_hierarchy test in own mount namespace 2024-04-29 16:14:11 -07:00
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 selftests/bpf: Correctly handle optlen > 4096 2023-05-13 16:55:46 -07:00
cgroup_hierarchical_stats.c selftests/bpf: Simplify cgroup_hierarchical_stats selftest 2022-09-23 13:59:08 -07:00
cgroup_iter.c selftests/bpf: Add tests for css_task iter combining with cgroup iter 2023-11-01 22:49:20 -07:00
cgroup_link.c selftests/bpf: Adapt cgroup effective query uapi change 2022-09-21 10:57:13 -07:00
cgroup_skb_sk_lookup.c
cgroup_tcp_skb.c selftests/bpf: remove duplicated functions 2023-08-08 17:01:19 -07:00
cgroup_v1v2.c selftests/bpf: Add parallel support for classid 2023-11-14 08:56:56 -08:00
cgrp_kfunc.c selftests/bpf: Add a test case for bpf_cgroup_from_id() 2023-02-23 08:33:43 -08:00
cgrp_local_storage.c selftests/bpf: Add selftests for cgroup1 local storage 2023-12-08 17:08:18 -08:00
check_mtu.c selftests/bpf: Fix check_mtu using wrong variable type 2023-06-06 17:08:22 +02:00
cls_redirect.c selftests/bpf: Use connect_to_addr in cls_redirect 2024-04-19 17:13:29 -07:00
connect_force_port.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
connect_ping.c selftests/bpf: Fix compiler warnings reported in -O2 mode 2023-10-06 20:17:28 +02:00
core_autosize.c selftests/bpf: Convert some selftests to high-level BPF map APIs 2022-05-13 15:15:21 +02:00
core_extern.c selftests/bpf: add test of __weak unknown virtual __kconfig extern 2022-07-19 09:33:18 -07:00
core_kern_overflow.c selftests/bpf: Test bpf_core_types_are_compat() functionality. 2022-02-04 11:29:01 -08:00
core_kern.c selftests/bpf: Test bpf_core_types_are_compat() functionality. 2022-02-04 11:29:01 -08:00
core_read_macros.c
core_reloc.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
core_retro.c selftests/bpf: Convert some selftests to high-level BPF map APIs 2022-05-13 15:15:21 +02:00
cpu_mask.c
cpumask.c selftests/bpf: Fix error checking for cpumask_success__load() 2024-02-07 16:14:19 -08:00
crypto_sanity.c selftests: bpf: crypto skcipher algo selftests 2024-04-24 16:01:10 -07:00
ctx_rewrite.c selftests/bpf: Factor out get_xlated_program() helper 2024-01-23 14:40:21 -08:00
custom_sec_handlers.c selftests/bpf: Add custom SEC() handling selftest 2022-03-05 09:38:15 -08:00
d_path.c selftests/bpf: Fix d_path test 2023-08-31 17:18:53 +02:00
decap_sanity.c selftests/bpf: Remove "&>" usage in the selftests 2024-01-29 12:48:32 -08:00
deny_namespace.c selftests/bpf: Add tests verifying bpf lsm userns_create hook 2022-08-16 17:39:59 -04:00
dummy_st_ops.c selftests/bpf: dummy_st_ops should reject 0 for non-nullable params 2024-04-25 12:42:43 -07:00
dynptr.c selftests/bpf: Accept mem from dynptr in helper funcs 2023-05-06 16:42:58 -07:00
empty_skb.c selftests/bpf: Use log_err in open_netns/close_netns 2024-04-24 13:12:28 -07:00
enable_stats.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
endian.c
exceptions.c selftests/bpf: Print log buffer for exceptions test only on failure 2023-09-19 02:07:36 -07:00
exhandler.c selftests/bpf: Add exception handling selftests for tp_bpf program 2021-11-08 22:17:55 +01:00
fentry_fexit.c selftests/bpf: Migrate from bpf_prog_test_run 2022-02-02 22:31:18 -08:00
fentry_test.c selftests/bpf: add testcase for TRACING with 6+ arguments 2023-07-13 16:04:56 -07:00
fexit_bpf2bpf.c selftests/bpf: add freplace of BTF-unreliable main prog test 2023-12-19 18:06:47 -08:00
fexit_sleep.c selftests/bpf: Add weak/typeless ksym test for light skeleton 2021-10-28 16:30:07 -07:00
fexit_stress.c selftests/bpf: Query BPF_MAX_TRAMP_LINKS using BTF 2023-01-28 12:29:41 -08:00
fexit_test.c selftests/bpf: add testcase for TRACING with 6+ arguments 2023-07-13 16:04:56 -07:00
fib_lookup.c selftests/bpf: Add BPF_FIB_LOOKUP_MARK tests 2024-03-28 18:30:53 -07:00
fill_link_info.c selftests/bpf: Add fill_link_info test for perf event 2024-01-23 16:05:28 -08:00
find_vma.c Improve stability of find_vma BPF test 2022-03-08 17:39:29 -08:00
flow_dissector_load_bytes.c bpf, test_run: Propagate bpf_flow_dissect's retval to user's bpf_attr.test.retval 2022-08-23 22:48:03 +02:00
flow_dissector_reattach.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
flow_dissector.c selftests/bpf: Implement get_hw_ring_size function to retrieve current and max interface size 2024-04-03 16:03:37 +02:00
for_each.c selftests/bpf: add test for bpf_for_each_map_elem() with different maps 2024-04-05 10:31:18 -07:00
fs_kfuncs.c selftests/bpf: Fixes tests for filesystem kfuncs 2023-12-12 09:51:47 -08:00
get_branch_snapshot.c selftests/bpf: Use PERF_COUNT_HW_CPU_CYCLES event for get_branch_snapshot 2023-04-07 15:24:43 -07:00
get_func_args_test.c selftests/bpf: add testcase for TRACING with 6+ arguments 2023-07-13 16:04:56 -07:00
get_func_ip_test.c selftests/bpf: Add bpf_get_func_ip test for uprobe inside function 2023-08-07 16:42:58 -07:00
get_stack_raw_tp.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
get_stackid_cannot_attach.c selftests/bpf: Fix leaked bpf_link in get_stackid_cannot_attach 2023-04-13 14:32:05 +02:00
global_data_init.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
global_data.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
global_func_args.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
global_func_dead_code.c selftests/bpf: validate eliminated global subprog is not freplaceable 2023-12-11 19:16:32 -08:00
global_map_resize.c selftests/bpf: extend existing map resize tests for per-cpu use case 2023-07-12 07:57:18 -07:00
hash_large_key.c
hashmap.c libbpf: Hashmap interface update to allow both long and void* keys/values 2022-11-09 20:45:14 -08:00
helper_restricted.c selftests/bpf: Use non-autoloaded programs in few tests 2022-04-19 13:48:20 -07:00
htab_reuse.c selftests/bpf: Add test case for element reuse in htab map 2023-02-15 15:40:06 -08:00
htab_update.c selftests/bpf: Add test cases for htab update 2022-08-31 14:10:01 -07:00
inner_array_lookup.c selftests/bpf: Add access_inner_map selftest 2023-06-02 17:04:22 -07:00
ip_check_defrag.c selftests/bpf: Use log_err in open_netns/close_netns 2024-04-24 13:12:28 -07:00
iters.c selftests/bpf: Add negtive test cases for task iter 2024-02-19 12:28:15 +01:00
jeq_infer_not_null.c selftests/bpf: check null propagation only neither reg is PTR_TO_BTF_ID 2022-12-22 17:19:23 -08:00
jit_probe_mem.c selftests/bpf: Add verifier test exercising jit PROBE_MEM logic 2022-12-22 00:53:58 +01:00
kfree_skb.c selftests/bpf: Fix kfree_skb on s390x 2023-01-28 12:30:08 -08:00
kfunc_call.c selftests/bpf: Fix repeat option when kfunc_call verification fails 2023-08-14 18:03:00 +02:00
kfunc_dynptr_param.c selftests/bpf: Clean up user_ringbuf, cgrp_kfunc, kfunc_dynptr_param tests 2023-02-13 21:42:29 -08:00
kprobe_multi_test.c selftests/bpf: Add kprobe session cookie test 2024-04-30 10:23:25 -07:00
kprobe_multi_testmod_test.c selftests/bpf: trace_helpers.c: Optimize kallsyms cache 2023-09-08 16:22:41 -07:00
kptr_xchg_inline.c selftests/bpf: Enable inline bpf_kptr_xchg() test for RV64 2024-02-01 11:35:48 +01:00
ksyms_btf.c selftests/bpf: Test passing rdonly mem to global func 2022-04-06 10:32:12 -07:00
ksyms_module.c selftests/bpf: Do not export subtest as standalone test 2022-02-08 21:17:34 +01:00
ksyms.c selftests/bpf: Replace CHECK with ASSERT macros for ksyms test 2024-03-28 18:31:41 -07:00
l4lb_all.c selftests/bpf: tests for using dynptrs to parse skb and xdp buffers 2023-03-01 10:05:19 -08:00
legacy_printk.c selftests/bpf: Mix legacy (maps) and modern (vars) BPF in one test 2021-11-25 23:05:23 +01:00
libbpf_get_fd_by_id_opts.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
libbpf_probes.c bpf: Add BPF token support to BPF_PROG_LOAD command 2024-01-24 16:21:01 -08:00
libbpf_str.c bpf: Add BPF token support to BPF_PROG_LOAD command 2024-01-24 16:21:01 -08:00
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_list.c selftests/bpf: Make linked_list failure test more robust 2023-10-20 09:29:39 -07:00
linked_maps.c
linked_vars.c
load_bytes_relative.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
local_kptr_stash.c selftests/bpf: Test bpf_kptr_xchg stashing of bpf_rb_root 2023-12-05 15:06:47 +01:00
log_buf.c bpf: omit default off=0 and imm=0 in register state log 2023-11-18 11:39:59 -08:00
log_fixup.c bpf: emit source code file name and line number in verifier log 2024-02-13 18:51:32 -08:00
lookup_and_delete.c selftests/bpf: Convert some selftests to high-level BPF map APIs 2022-05-13 15:15:21 +02:00
lookup_key.c selftests/bpf: Add additional tests for bpf_lookup_*_key() 2022-09-21 17:33:42 -07:00
lru_bug.c selftests/bpf: Add test for prealloc_lru_pop bug 2022-08-09 18:46:11 -07:00
lsm_cgroup.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
lwt_helpers.h selftests/bpf: Fix flaky selftest lwt_redirect/lwt_reroute 2024-02-05 11:13:36 -08:00
lwt_redirect.c selftests/bpf: Fix flaky selftest lwt_redirect/lwt_reroute 2024-02-05 11:13:36 -08:00
lwt_reroute.c selftests/bpf: Fix flaky selftest lwt_redirect/lwt_reroute 2024-02-05 11:13:36 -08:00
map_btf.c selftests/bpf: Test the release of map btf 2023-12-18 18:15:49 +01:00
map_in_map.c selftests/bpf: Add test cases for inner map 2023-12-04 17:50:27 -08:00
map_init.c
map_kptr.c selftests/bpf: Add more tests for kptrs in maps 2023-03-01 10:24:33 -08:00
map_lock.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
map_lookup_percpu_elem.c selftests/bpf: Fix some bugs in map_lookup_percpu_elem testcase 2022-05-20 15:07:41 -07:00
map_ops.c bpf/selftests: coverage for bpf_map_ops errors 2023-03-22 15:11:06 -07:00
map_ptr.c selftests/bpf: Migrate from bpf_prog_test_run 2022-02-02 22:31:18 -08:00
metadata.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
migrate_reuseport.c Fix typos in selftest/bpf files 2023-02-16 16:56:17 -08:00
missed.c selftests/bpf: Improve missed_kprobe_recursion test robustness 2023-10-16 13:49:18 +02:00
mmap.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
modify_return.c selftests/bpf: add testcase for TRACING with 6+ arguments 2023-07-13 16:04:56 -07:00
module_attach.c selftests/bpf: add tests for the "module: Function" syntax 2024-05-01 09:53:48 -07:00
module_fentry_shadow.c selftests/bpf: Skip module_fentry_shadow test when bpf_testmod is not available 2023-09-14 11:16:13 -07:00
mptcp.c selftests/bpf: Make start_mptcp_server static 2024-04-30 16:01:30 -07:00
nested_trust.c selftests/bpf: Add nested trust selftests suite 2023-01-25 07:57:50 -08:00
netcnt.c selftests/bpf: improve netcnt test robustness 2023-05-16 20:57:16 -07:00
netfilter_link_attach.c selftests/bpf: Add bpf_program__attach_netfilter helper test 2023-06-30 12:34:38 -07:00
netns_cookie.c
ns_current_pid_tgid.c selftests/bpf: Add a sk_msg prog bpf_get_ns_current_pid_tgid() test 2024-03-19 14:27:00 -07:00
obj_name.c selftests/bpf: Clean up array_size.cocci warnings 2022-03-15 17:03:10 +01:00
parse_tcp_hdr_opt.c selftests/bpf: tests for using dynptrs to parse skb and xdp buffers 2023-03-01 10:05:19 -08:00
pe_preserve_elems.c
percpu_alloc.c selftests/bpf: Improve percpu_alloc test robustness 2023-10-16 13:49:18 +02:00
perf_branches.c Improve perf related BPF tests (sample_freq issue) 2022-03-08 17:39:28 -08:00
perf_buffer.c selftests/bpf: Migrate all deprecated perf_buffer uses 2021-11-11 16:54:05 -08:00
perf_event_stackmap.c selftests/bpf: Use read_perf_max_sample_freq() in perf_event_stackmap 2023-04-13 14:32:04 +02:00
perf_link.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
perf_skip.c selftest/bpf: Test a perf BPF program that suppresses side effects 2024-04-12 11:49:51 +02:00
pinning.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
pkt_access.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
pkt_md_access.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
preempt_lock.c selftests/bpf: Add tests for preempt kfuncs 2024-04-24 09:47:49 -07:00
preempted_bpf_ma_op.c selftests/bpf: Test preemption between bpf_obj_new() and bpf_obj_drop() 2023-09-08 08:42:19 -07:00
probe_read_user_str.c
probe_user.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
prog_array_init.c selftests/bpf: Test BPF_MAP_TYPE_PROG_ARRAY static initialization 2021-11-28 22:24:57 -08:00
prog_run_opts.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
prog_tests_framework.c selftests/bpf: Refactor prog_tests logging and test execution 2022-04-18 21:22:13 -07:00
ptr_untrusted.c selftests/bpf: Add selftest for PTR_UNTRUSTED 2023-07-13 16:24:29 -07:00
queue_stack_map.c selftests/bpf: Fix compiler warnings reported in -O2 mode 2023-10-06 20:17:28 +02:00
raw_tp_test_run.c selftests/bpf: Migrate from bpf_prog_test_run_xattr 2022-02-02 22:31:18 -08:00
raw_tp_writable_reject_nbd_invalid.c selftests/bpf: Convert legacy prog load APIs to bpf_prog_load() 2021-11-07 08:34:23 -08:00
raw_tp_writable_test_run.c selftests/bpf: Migrate from bpf_prog_test_run 2022-02-02 22:31:18 -08:00
rbtree.c bpf: Migrate bpf_rbtree_remove to possibly fail 2023-04-15 17:36:50 -07:00
rcu_read_lock.c selftests/bpf: Add tests for RCU lock transfer between subprogs 2024-02-05 20:00:14 -08:00
rdonly_maps.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
read_vsyscall.c selftest/bpf: Test the read of vsyscall page under x86-64 2024-02-15 19:21:39 -08:00
recursion.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
recursive_attach.c selftests/bpf: Test re-attachment fix for bpf_tracing_prog_attach 2024-01-04 20:40:49 -08:00
refcounted_kptr.c bpf: Reenable bpf_refcount_acquire 2023-08-25 09:23:16 -07:00
reference_tracking.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
reg_bounds.c selftests/bpf: detect testing prog flags support 2024-01-23 14:40:22 -08:00
resolve_btfids.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
ringbuf_multi.c selftests/bpf: Add tests for ring_buffer__ring 2023-09-25 16:22:42 -07:00
ringbuf.c selftests/bpf: Add ring_buffer__consume_n test. 2024-04-25 11:46:04 -07:00
section_names.c selftests/bpf: Add tests for cgroup unix socket address hooks 2023-10-11 17:27:55 -07:00
select_reuseport.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
send_signal_sched_switch.c selfetest/bpf: Make some tests serial 2021-10-08 15:17:00 -07:00
send_signal.c selftests/bpf: Skip test when perf_event_open returns EOPNOTSUPP 2024-04-02 16:29:28 +02:00
setget_sockopt.c selftests/bpf: Calls bpf_setsockopt() on a ktls enabled socket. 2023-01-25 15:10:34 -08:00
signal_pending.c selftests/bpf: Migrate from bpf_prog_test_run 2022-02-02 22:31:18 -08:00
sk_assign.c selftests/bpf: Use connect_to_addr in sk_assign 2024-04-19 17:13:29 -07:00
sk_lookup.c selftests/bpf: Remove explicit setrlimit(RLIMIT_MEMLOCK) in main selftests 2021-12-14 22:16:54 +01:00
sk_storage_omem_uncharge.c selftests/bpf: Check bpf_sk_storage has uncharged sk_omem_alloc 2023-09-06 11:08:47 +02:00
sk_storage_tracing.c selfetest/bpf: Make some tests serial 2021-10-08 15:17:00 -07:00
skb_ctx.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
skb_helpers.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
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 selftests/bpf: Test bpf_skc_to_unix_sock() helper 2021-10-21 15:11:06 -07:00
skeleton.c libbpf: add non-mmapable data section selftest 2022-10-19 16:40:45 -07:00
snprintf_btf.c selfetest/bpf: Make some tests serial 2021-10-08 15:17:00 -07:00
snprintf.c selftests/bpf: Drop duplicate max/min definitions 2022-04-11 17:18:09 +02:00
sock_addr.c selftests/bpf: Expand ATTACH_REJECT tests 2024-05-12 17:10:42 -07:00
sock_destroy.c selftests/bpf: Remove "&>" usage in the selftests 2024-01-29 12:48:32 -08:00
sock_fields.c selftests/bpf: Fix rare segfault in sock_fields prog test 2022-06-23 10:52:12 -07:00
sock_iter_batch.c selftests/bpf: Remove "&>" usage in the selftests 2024-01-29 12:48:32 -08:00
socket_cookie.c
sockmap_basic.c selftests/bpf: Add some tests with new bpf_program__attach_sockmap() APIs 2024-04-10 19:52:25 -07:00
sockmap_helpers.h selftests/bpf: Fix compiler warnings reported in -O2 mode 2023-10-06 20:17:28 +02:00
sockmap_ktls.c selftests/bpf: Convert sockmap_ktls test to ASSERT_* macros 2022-09-28 17:33:21 -07:00
sockmap_listen.c selftests/bpf: Add some tests with new bpf_program__attach_sockmap() APIs 2024-04-10 19:52:25 -07:00
sockopt_inherit.c selftests/bpf: Use connect_to_fd in sockopt_inherit 2024-05-09 13:40:38 -07:00
sockopt_multi.c selftests/bpf: Correctly handle optlen > 4096 2023-05-13 16:55:46 -07:00
sockopt_qos_to_cc.c selftests/bpf: Correctly handle optlen > 4096 2023-05-13 16:55:46 -07:00
sockopt_sk.c selftests/bpf: Fix sockopt_sk selftest 2023-06-06 11:07:26 -07:00
sockopt.c selftests/bpf: Add sockopt case to verify prog_type 2024-04-30 10:43:37 -07:00
spin_lock.c selftests/bpf: Add test for static subprog call in lock cs 2024-02-05 19:58:47 -08:00
stack_var_off.c
stacktrace_build_id_nmi.c selftests/bpf: Skip test when perf_event_open returns EOPNOTSUPP 2024-04-02 16:29:28 +02:00
stacktrace_build_id.c selftests/bpf: Replace extract_build_id with read_build_id 2023-03-31 09:40:16 -07:00
stacktrace_map_raw_tp.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
stacktrace_map_skip.c selftests/bpf: Test skipping stacktrace 2022-03-20 19:16:50 -07:00
stacktrace_map.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
static_linked.c
struct_ops_autocreate.c selftests/bpf: Test case for SEC("?.struct_ops") 2024-03-06 15:18:16 -08:00
subprogs_extable.c selftests/bpf: add a test for subprogram extables 2023-06-13 15:13:52 -07:00
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 selftests/bpf: Test outer map update operations in syscall program 2023-12-04 17:50:27 -08:00
tailcalls.c selftests/bpf: Add test for early update in prog_array_map_poke_run 2023-12-06 22:40:43 +01:00
task_fd_query_rawtp.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
task_fd_query_tp.c selftests/bpf: use canonical ftrace path 2023-03-13 21:51:30 -07:00
task_kfunc.c selftests/bpf: Add CO-RE relocs kfunc flavors tests 2023-08-18 18:12:59 +02:00
task_local_storage.c bpf: Allow compiler to inline most of bpf_local_storage_lookup() 2024-02-11 14:06:24 -08:00
task_pt_regs.c selftests/bpf: Few fixes for selftests/bpf built in release mode 2022-08-17 22:43:58 +02:00
task_under_cgroup.c selftests/bpf: Add selftest for bpf_task_under_cgroup() in sleepable prog 2023-10-17 18:31:27 +02:00
tc_bpf.c selftests/bpf: Add selftest for allow_ptr_leaks 2023-08-23 09:37:29 -07:00
tc_helpers.h selftests/bpf: Add selftests for netkit 2023-10-24 16:07:43 -07:00
tc_links.c selftests/bpf: Make seen_tc* variable tests more robust 2023-10-06 17:11:21 -07:00
tc_netkit.c selftests/bpf: Add selftests for netkit 2023-10-24 16:07:43 -07:00
tc_opts.c selftests/bpf: fix RELEASE=1 build for tc_opts 2023-11-09 18:58:38 -08:00
tc_redirect.c selftests/bpf: Use log_err in open_netns/close_netns 2024-04-24 13:12:28 -07:00
tcp_custom_syncookie.c selftest: bpf: Test bpf_sk_assign_tcp_reqsk(). 2024-01-23 14:40:24 -08:00
tcp_estats.c selftests/bpf: Convert tcp_estats test to ASSERT_* macros 2022-09-28 17:33:59 -07:00
tcp_hdr_options.c selftests/bpf: Correct two typos 2023-07-07 19:36:04 +02:00
tcp_rtt.c selftests/bpf: extend BPF_SOCK_OPS_RTT_CB test for srtt and mrtt_us 2024-04-25 14:09:05 -07:00
tcpbpf_user.c selftests/bpf: Convert tcpbpf_user test to ASSERT_* macros 2022-09-28 17:34:14 -07:00
test_bpf_ma.c selftests/bpf: Cope with 512 bytes limit with bpf_global_percpu_ma 2024-01-03 21:08:26 -08:00
test_bpf_syscall_macro.c selftests/bpf: Add 6-argument syscall tracing test 2023-01-23 20:53:01 +01:00
test_bpffs.c selftests/bpf: fix test_bpffs 2023-11-01 22:31:41 -07:00
test_bprm_opts.c selftests/bpf: Move sys_pidfd_open() into task_local_storage_helpers.h 2022-09-01 12:16:20 -07:00
test_global_funcs.c libbpf: feature-detect arg:ctx tag support in kernel 2024-01-17 20:20:05 -08:00
test_ima.c selftests/bpf: Fix IMA test 2023-03-08 11:15:39 -08:00
test_ldsx_insn.c selftests/bpf: Test ldsx with more complex cases 2023-07-27 18:54:17 -07:00
test_local_storage.c selftests/bpf: Test task storage when local_storage->smap is NULL 2023-03-25 19:52:52 -07:00
test_lsm.c selftests/bpf: Check stack_mprotect() return value 2023-01-28 12:30:08 -08:00
test_overhead.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
test_profiler.c selftests/bpf: Migrate from bpf_prog_test_run_xattr 2022-02-02 22:31:18 -08:00
test_skb_pkt_end.c selftests/bpf: Migrate from bpf_prog_test_run 2022-02-02 22:31:18 -08:00
test_strncmp.c selftests/bpf: Use non-autoloaded programs in few tests 2022-04-19 13:48:20 -07:00
test_struct_ops_maybe_null.c selftests/bpf: Test PTR_MAYBE_NULL arguments of struct_ops operators. 2024-02-13 15:16:44 -08:00
test_struct_ops_module.c selftests/bpf: shorten subtest names for struct_ops_module test 2024-05-07 16:21:59 -07:00
test_struct_ops_multi_pages.c selftests/bpf: Test struct_ops maps with a large number of struct_ops program. 2024-03-04 14:09:24 -08:00
test_struct_ops_no_cfi.c selftests/bpf: Test case for lacking CFI stub functions. 2024-02-22 12:26:41 -08:00
test_tunnel.c selftests/bpf: Use log_err in open_netns/close_netns 2024-04-24 13:12:28 -07:00
time_tai.c selftests/bpf: Relax time_tai test for equal timestamps in tai_forward 2023-12-12 15:53:34 -08:00
timer_crash.c selftests/bpf: Add test for bpf_timer overwriting crash 2022-02-11 13:13:04 -08:00
timer_mim.c selftests/bpf: Convert some selftests to high-level BPF map APIs 2022-05-13 15:15:21 +02:00
timer.c selftests/bpf: Test racing between bpf_timer_cancel_and_free and bpf_timer_cancel 2024-02-19 12:26:46 +01:00
token.c selftests/bpf: Incorporate LSM policy to token-based tests 2024-01-24 16:21:03 -08:00
tp_attach_query.c selftests/bpf: use canonical ftrace path 2023-03-13 21:51:30 -07:00
trace_ext.c selftests/bpf: Migrate from bpf_prog_test_run 2022-02-02 22:31:18 -08:00
trace_printk.c selftests/bpf: Add read_trace_pipe_iter function 2024-04-12 18:25:21 +02:00
trace_vprintk.c selftests/bpf: Add read_trace_pipe_iter function 2024-04-12 18:25:21 +02:00
tracing_failure.c selftests/bpf: Ensure fentry prog cannot attach to bpf_spin_{lock,unlcok}() 2024-02-13 11:11:25 -08:00
tracing_struct.c selftests/bpf: add testcase for TRACING with 6+ arguments 2023-07-13 16:04:56 -07:00
trampoline_count.c selftests/bpf: add testcase for TRACING with 6+ arguments 2023-07-13 16:04:56 -07:00
type_cast.c bpf: Add type cast unit tests 2022-11-20 15:45:48 -08:00
udp_limit.c selftests/bpf: Convert udp_limit test to ASSERT_* macros 2022-09-28 17:34:19 -07:00
uninit_stack.c selftests/bpf: Tests for uninitialized stack reads 2023-02-22 12:34:50 -08:00
unpriv_bpf_disabled.c bpf: Centralize permissions checks for all BPF map types 2023-06-19 14:04:04 +02:00
uprobe_autoattach.c selftests/bpf: add bpf_for_each(), bpf_for(), and bpf_repeat() macros 2023-03-08 16:19:51 -08:00
uprobe_multi_test.c bpf: fix multi-uprobe PID filtering logic 2024-05-25 10:46:02 -07:00
uprobe.c selftests/bpf: Add tests for symbol versioning for uprobe 2023-09-22 14:27:41 -07:00
usdt.c selftests/bpf: Set errno when urand_spawn() fails 2023-01-28 12:30:08 -08:00
user_ringbuf.c selftests/bpf: Use __NR_prlimit64 instead of __NR_getrlimit in user_ringbuf test 2023-02-27 09:49:40 -08:00
varlen.c selftests: bpf: Add a test when bpf_probe_read_kernel_str() returns EFAULT 2022-11-11 11:44:46 -08:00
verif_stats.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
verifier_kfunc_prog_types.c selftests/bpf: Verify calling core kfuncs from BPF_PROG_TYPE_SYCALL 2024-04-05 10:58:10 -07:00
verifier_log.c selftests/bpf: Fix use of uninitialized op_name in log tests 2023-04-13 14:17:02 +02:00
verifier.c selftests/bpf: Migrate recvmsg* return code tests to verifier_sock_addr.c 2024-05-12 17:10:40 -07:00
verify_pkcs7_sig.c selftests/bpf: Fix spelling mistake "get_signaure_size" -> "get_signature_size" 2023-12-04 15:59:42 +01:00
vmlinux.c selftests/bpf: Replaces the usage of CHECK calls for ASSERTs in vmlinux 2023-11-21 10:45:26 -08:00
vrf_socket_lookup.c selftests/bpf: Add vrf_socket_lookup tests 2023-06-21 23:48:51 +02:00
wq.c selftests/bpf: Drop an unused local variable 2024-04-30 16:28:58 +02:00
xdp_adjust_frags.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
xdp_adjust_tail.c selftests/bpf: Fix test_xdp_adjust_tail_grow2 on s390x 2023-01-28 12:30:09 -08:00
xdp_attach.c selftests/bpf: Add testcase for xdp attaching failure tracepoint 2023-08-02 14:21:12 -07:00
xdp_bonding.c selftests/bpf: Fix up xdp bonding test wrt feature flags 2024-03-05 16:19:42 -08:00
xdp_bpf2bpf.c selftests/bpf: Migrate from bpf_prog_test_run 2022-02-02 22:31:18 -08:00
xdp_context_test_run.c selftests/bpf: Increase invalid metadata size 2023-12-11 16:09:24 +01:00
xdp_cpumap_attach.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
xdp_dev_bound_only.c selftests/bpf: Offloaded prog after non-offloaded should not cause BUG 2023-09-11 23:18:11 -07:00
xdp_devmap_attach.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
xdp_do_redirect.c selftests/bpf: Fix pointer arithmetic in test_xdp_do_redirect 2024-05-06 13:42:22 -07:00
xdp_info.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
xdp_link.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
xdp_metadata.c selftests/bpf: Use log_err in open_netns/close_netns 2024-04-24 13:12:28 -07:00
xdp_noinline.c selftests/bpf: Migrate from bpf_prog_test_run 2022-02-02 22:31:18 -08:00
xdp_perf.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
xdp_synproxy.c selftests/bpf: move SYS() macro into the test_progs.h 2023-02-24 17:34:09 -08:00
xdp.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
xdpwall.c selftests/bpf: Update LLVM Phabricator links 2024-01-23 14:40:22 -08:00
xfrm_info.c selftests/bpf: move SYS() macro into the test_progs.h 2023-02-24 17:34:09 -08:00