1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
linux/tools/testing/selftests/bpf/prog_tests
Manu Bretelle f77d795618 selftests/bpf: Fixes tests for filesystem kfuncs
`fs_kfuncs.c`'s `test_xattr` would fail the test even when the
filesystem did not support xattr, for instance when /tmp is mounted as
tmpfs.

This change checks errno when setxattr fail. If the failure is due to
the operation being unsupported, we will skip the test (just like we
would if verity was not enabled on the FS.

Before the change, fs_kfuncs test would fail in test_axattr:

 $ vmtest -k $(make -s image_name) './tools/testing/selftests/bpf/test_progs -a fs_kfuncs'
 => bzImage
 ===> Booting
 [    0.000000] rcu:        RCU restricting CPUs from NR_CPUS=128 to
 nr_cpu_
 ===> Setting up VM
 ===> Running command
 [    4.157491] bpf_testmod: loading out-of-tree module taints kernel.
 [    4.161515] bpf_testmod: module verification failed: signature and/or
 required key missing - tainting kernel
 test_xattr:PASS:create_file 0 nsec
 test_xattr:FAIL:setxattr unexpected error: -1 (errno 95)
 #90/1    fs_kfuncs/xattr:FAIL
 #90/2    fs_kfuncs/fsverity:SKIP
 #90      fs_kfuncs:FAIL

 All error logs:
 test_xattr:PASS:create_file 0 nsec
 test_xattr:FAIL:setxattr unexpected error: -1 (errno 95)
 #90/1    fs_kfuncs/xattr:FAIL
 #90      fs_kfuncs:FAIL

 Summary: 0/0 PASSED, 1 SKIPPED, 1 FAILED

Test plan:

  $ touch tmpfs_file && truncate -s 1G tmpfs_file && mkfs.ext4 tmpfs_file
  # /tmp mounted as tmpfs
  $ vmtest -k $(make -s image_name) './tools/testing/selftests/bpf/test_progs -a fs_kfuncs'
  => bzImage
  ===> Booting
  ===> Setting up VM
  ===> Running command
  WARNING! Selftests relying on bpf_testmod.ko will be skipped.
  Can't find bpf_testmod.ko kernel module: -2
  #90/1    fs_kfuncs/xattr:SKIP
  #90/2    fs_kfuncs/fsverity:SKIP
  #90      fs_kfuncs:SKIP
  Summary: 1/0 PASSED, 2 SKIPPED, 0 FAILED
  # /tmp mounted as ext4 with xattr enabled but not verity
  $ vmtest -k $(make -s image_name) 'mount -o loop tmpfs_file /tmp && \
    /tools/testing/selftests/bpf/test_progs -a fs_kfuncs'
  => bzImage
  ===> Booting
  ===> Setting up VM
  ===> Running command
  [    4.067071] loop0: detected capacity change from 0 to 2097152
  [    4.191882] EXT4-fs (loop0): mounted filesystem
  407ffa36-4553-4c8c-8c78-134443630f69 r/w with ordered data mode. Quota
  mode: none.
  WARNING! Selftests relying on bpf_testmod.ko will be skipped.
  Can't find bpf_testmod.ko kernel module: -2
  #90/1    fs_kfuncs/xattr:OK
  #90/2    fs_kfuncs/fsverity:SKIP
  #90      fs_kfuncs:OK (SKIP: 1/2)
  Summary: 1/1 PASSED, 1 SKIPPED, 0 FAILED
  $ tune2fs -O verity tmpfs_file
  # /tmp as ext4 with both xattr and verity enabled
  $ vmtest -k $(make -s image_name) 'mount -o loop tmpfs_file /tmp && \
    ./tools/testing/selftests/bpf/test_progs -a fs_kfuncs'
  => bzImage
  ===> Booting
  ===> Setting up VM
  ===> Running command
  [    4.291434] loop0: detected capacity change from 0 to 2097152
  [    4.460828] EXT4-fs (loop0): recovery complete
  [    4.468631] EXT4-fs (loop0): mounted filesystem
  7b4a7b7f-c442-4b06-9ede-254e63cceb52 r/w with ordered data mode. Quota
  mode: none.
  [    4.988074] fs-verity: sha256 using implementation "sha256-generic"
  WARNING! Selftests relying on bpf_testmod.ko will be skipped.
  Can't find bpf_testmod.ko kernel module: -2
  #90/1    fs_kfuncs/xattr:OK
  #90/2    fs_kfuncs/fsverity:OK
  #90      fs_kfuncs:OK
  Summary: 1/2 PASSED, 0 SKIPPED, 0 FAILED

Fixes: 341f06fddd ("selftests/bpf: Add tests for filesystem kfuncs")
Signed-off-by: Manu Bretelle <chantr4@gmail.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Acked-by: John Fastabend <john.fastabend@gmail.com>
Link: https://lore.kernel.org/bpf/20231211180733.763025-1-chantr4@gmail.com
2023-12-12 09:51:47 -08:00
..
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
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
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 selftests/bpf: Add missing cleanup in atomic_bounds test 2021-02-08 17:55:01 -08:00
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 selftests/bpf: Test auto-load disabling logic for BPF programs 2020-06-28 10:06:53 -07: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 selftests/bpf: Fix compiler warnings reported in -O2 mode 2023-10-06 20:17:28 +02:00
bpf_cookie.c selftests/bpf: Add uprobe_multi cookie test 2023-08-21 15:51:27 -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_iter_setsockopt.c selfetest/bpf: Make some tests serial 2021-10-08 15:17:00 -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_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: Replaces the usage of CHECK calls for ASSERTs in bpf_tcp_ca 2023-11-21 10:43:03 -08:00
bpf_verif_scale.c bpf: rename BPF_F_TEST_SANITY_STRICT to BPF_F_TEST_REG_INVARIANTS 2023-11-17 10:30:02 -08:00
btf.c selftests/bpf: satisfy compiler by having explicit return in btf test 2023-11-09 18:58:38 -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: Temporarily disable part of btf_dump:var_data test. 2022-12-28 13:57:47 -08: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: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -08:00
btf_module.c selftests/bpf: Test btf__load_vmlinux_btf/btf__load_module_btf APIs 2021-08-16 18:38:52 -07:00
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
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: Add selftests for cgroup1 hierarchy 2023-11-14 08:59:23 -08: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 selftests/bpf: Turn on libbpf 1.0 mode and fix all IS_ERR checks 2021-05-25 17:32:35 -07:00
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: tests for using dynptrs to parse skb and xdp buffers 2023-03-01 10:05:19 -08: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.c selftests/bpf: Test bpf_core_types_are_compat() functionality. 2022-02-04 11:29:01 -08:00
core_kern_overflow.c selftests/bpf: Test bpf_core_types_are_compat() functionality. 2022-02-04 11:29:01 -08:00
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: 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 selftests: Use consistent include paths for libbpf 2020-01-20 16:37:45 -08:00
cpumask.c selftests/bpf: Add test for bpf_cpumask_weight() kfunc 2023-12-09 21:37:33 -08:00
ctx_rewrite.c net: skbuff: move the fields BPF cares about directly next to the offset marker 2023-03-20 21:57:49 -07: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: move SYS() macro into the test_progs.h 2023-02-24 17:34:09 -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 bpf/selftests: Verify struct_ops prog sleepable behavior 2023-01-25 10:25:57 -08: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: Update bpf_clone_redirect expected return code 2023-09-11 22:29:32 +02: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 selftests/bpf: Add byte swapping selftest 2020-07-01 09:06:12 +02:00
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: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -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_SRC tests 2023-10-09 16:28:37 -07:00
fill_link_info.c selftests/bpf: Add link_info test for uprobe_multi link 2023-11-28 21:50:09 -08:00
find_vma.c Improve stability of find_vma BPF test 2022-03-08 17:39:29 -08:00
flow_dissector.c selftests/bpf: Fix BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL for empty flow label 2023-02-22 13:13:13 -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
for_each.c selftests/bpf: Convert some selftests to high-level BPF map APIs 2022-05-13 15:15:21 +02: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.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +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_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 bpf: Lift hashtab key_size limit 2020-11-05 20:04:46 -08:00
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 bpf: selftests: Add defrag selftests 2023-07-28 16:52:08 -07:00
iters.c selftests/bpf: Add test for using css_task iter in sleepable progs 2023-11-01 22:49:20 -07: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: Fix kprobe_multi_test/attach_override test 2023-09-13 11:45:06 -07:00
kprobe_multi_testmod_test.c selftests/bpf: trace_helpers.c: Optimize kallsyms cache 2023-09-08 16:22:41 -07:00
ksyms.c selftests/bpf: Ksyms_btf to test typed ksyms 2020-10-02 14:59:25 -07: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
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 2023-12-06 10:02:59 -08:00
libbpf_str.c bpf: rename MAX_BPF_LINK_TYPE into __MAX_BPF_LINK_TYPE for consistency 2023-12-06 14:41:16 -08:00
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 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 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 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 selftests/bpf: relax expected log messages to allow emitting BPF_ST 2023-08-08 17:02:22 -07: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 compiler warnings reported in -O2 mode 2023-10-06 20:17:28 +02:00
lwt_redirect.c selftests/bpf: Add lwt_xmit tests for BPF_REDIRECT 2023-08-18 16:05:26 +02:00
lwt_reroute.c selftests/bpf: Add lwt_xmit tests for BPF_REROUTE 2023-08-18 16:05:27 +02:00
map_in_map.c selftests/bpf: Add test cases for inner map 2023-12-04 17:50:27 -08:00
map_init.c bpf: Zero-fill re-used per-cpu map element 2020-11-05 19:55:57 -08:00
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: Use un/load_bpf_testmod functions in tests 2023-05-16 22:09:23 -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: Add mptcpify test 2023-08-16 11:42:33 -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 selftests/bpf: Test for get_netns_cookie 2021-08-24 14:17:53 -07:00
ns_current_pid_tgid.c selfetest/bpf: Make some tests serial 2021-10-08 15:17: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 selftests/bpf: Add tests for BPF_F_PRESERVE_ELEMS 2020-09-30 23:21:06 -07:00
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
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
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 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: 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 bpf: Refactor RCU enforcement in the verifier. 2023-03-03 17:42:20 +01:00
rdonly_maps.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
recursion.c selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -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: reduce verboseness of reg_bounds selftest logs 2023-11-20 12:54:04 -08:00
resolve_btfids.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02:00
ringbuf.c selftests/bpf: Add tests for ring__consume 2023-09-25 16:22:43 -07:00
ringbuf_multi.c selftests/bpf: Add tests for ring_buffer__ring 2023-09-25 16:22:42 -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.c bpf/selftests: Fix send_signal tracepoint tests 2023-03-10 10:36:46 -08:00
send_signal_sched_switch.c selfetest/bpf: Make some tests serial 2021-10-08 15:17:00 -07: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: Fix sk_assign on s390x 2023-01-29 19:16:28 -08: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.c selftests/bpf: Drop duplicate max/min definitions 2022-04-11 17:18:09 +02:00
snprintf_btf.c selfetest/bpf: Make some tests serial 2021-10-08 15:17:00 -07:00
sock_addr.c selftests/bpf: Add tests for cgroup unix socket address hooks 2023-10-11 17:27:55 -07:00
sock_destroy.c selftests/bpf: Test bpf_sock_destroy 2023-05-19 22:44:28 -07:00
sock_fields.c selftests/bpf: Fix rare segfault in sock_fields prog test 2022-06-23 10:52:12 -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 bpf-next-for-netdev 2023-10-16 21:05:33 -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 bpf, sockmap: Add af_unix test with both sockets in map 2023-11-30 00:25:25 +01:00
sockopt.c selftests/bpf/sockopt: Add io_uring support 2023-10-19 16:42:04 -06:00
sockopt_inherit.c selftests/bpf: Correctly handle optlen > 4096 2023-05-13 16:55:46 -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
spin_lock.c bpf: omit default off=0 and imm=0 in register state log 2023-11-18 11:39:59 -08:00
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 selftests/bpf: Replace extract_build_id with read_build_id 2023-03-31 09:40:16 -07:00
stacktrace_build_id_nmi.c selftests/bpf: Use read_perf_max_sample_freq() in perf_event_stackmap 2023-04-13 14:32:04 +02:00
stacktrace_map.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +02: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
static_linked.c selftests/bpf: Validate skeleton gen handles skipped fields 2021-05-13 17:23:57 -07:00
subprogs.c selftests/bpf: Test subprog jit when toggle bpf_jit_harden repeatedly 2022-03-16 15:13:36 -07:00
subprogs_extable.c selftests/bpf: add a test for subprogram extables 2023-06-13 15:13:52 -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 testcases for tailcall infinite loop fixing 2023-09-12 13:06:12 -07: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 selftests/bpf: Use bpf_{btf,link,map,prog}_get_info_by_fd() 2023-02-16 15:32:46 -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: Add netkit to tc_redirect selftest 2023-11-20 10:15:16 -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: Convert tcp_rtt test to ASSERT_* macros 2022-09-28 17:34:09 -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: Add more test cases for bpf memory allocator 2023-10-20 14:15:13 -07: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 selftests/bpf: Add global subprog context passing tests 2023-02-17 21:21:50 +01: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_tunnel.c selftests/bpf: Test FOU kfuncs for externally controlled ipip devices 2023-04-12 16:40:39 -07:00
time_tai.c selftests/bpf: Add BPF-helper test for CLOCK_TAI access 2022-08-09 09:47:13 -07:00
timer.c bpf-next-for-netdev 2023-10-16 21:05:33 -07: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
token.c selftests/bpf: add BPF token-enabled tests 2023-12-06 10:03:00 -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: use canonical ftrace path 2023-03-13 21:51:30 -07:00
trace_vprintk.c selftests/bpf: use canonical ftrace path 2023-03-13 21:51:30 -07: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.c selftests/bpf: Add tests for symbol versioning for uprobe 2023-09-22 14:27:41 -07: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 libbpf: Add st_type argument to elf_resolve_syms_offsets function 2023-11-28 21:50:09 -08: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.c selftests/bpf: Add lazy global subprog validation tests 2023-11-24 10:40:06 +01:00
verifier_log.c selftests/bpf: Fix use of uninitialized op_name in log tests 2023-04-13 14:17:02 +02: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
xdp.c selftests/bpf: Store BPF object files with .bpf.o extension 2022-09-02 15:55:37 +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: Add xdp_feature selftest for bond device 2023-05-23 16:22:25 +02: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 merge conflict due to SYS() macro change. 2023-04-13 17:22:48 -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: Add TX side to xdp_metadata 2023-11-29 14:59:41 -08: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
xdpwall.c bpf: selftest: A bpf prog that has a 32bit scalar spill 2021-09-26 13:07:28 -07:00
xfrm_info.c selftests/bpf: move SYS() macro into the test_progs.h 2023-02-24 17:34:09 -08:00