linux/tools/testing/selftests/bpf/prog_tests
Daniel Borkmann dbd7eb14e0 bpf, selftests: Replicate tailcall limit test for indirect call case
The tailcall_3 test program uses bpf_tail_call_static() where the JIT
would patch a direct jump. Add a new tailcall_6 test program replicating
exactly the same test just ensuring that bpf_tail_call() uses a map
index where the verifier cannot make assumptions this time.

In other words, this will now cover both on x86-64 JIT, meaning, JIT
images with emit_bpf_tail_call_direct() emission as well as JIT images
with emit_bpf_tail_call_indirect() emission.

  # echo 1 > /proc/sys/net/core/bpf_jit_enable
  # ./test_progs -t tailcalls
  #136/1 tailcalls/tailcall_1:OK
  #136/2 tailcalls/tailcall_2:OK
  #136/3 tailcalls/tailcall_3:OK
  #136/4 tailcalls/tailcall_4:OK
  #136/5 tailcalls/tailcall_5:OK
  #136/6 tailcalls/tailcall_6:OK
  #136/7 tailcalls/tailcall_bpf2bpf_1:OK
  #136/8 tailcalls/tailcall_bpf2bpf_2:OK
  #136/9 tailcalls/tailcall_bpf2bpf_3:OK
  #136/10 tailcalls/tailcall_bpf2bpf_4:OK
  #136/11 tailcalls/tailcall_bpf2bpf_5:OK
  #136 tailcalls:OK
  Summary: 1/11 PASSED, 0 SKIPPED, 0 FAILED

  # echo 0 > /proc/sys/net/core/bpf_jit_enable
  # ./test_progs -t tailcalls
  #136/1 tailcalls/tailcall_1:OK
  #136/2 tailcalls/tailcall_2:OK
  #136/3 tailcalls/tailcall_3:OK
  #136/4 tailcalls/tailcall_4:OK
  #136/5 tailcalls/tailcall_5:OK
  #136/6 tailcalls/tailcall_6:OK
  [...]

For interpreter, the tailcall_1-6 tests are passing as well. The later
tailcall_bpf2bpf_* are failing due lack of bpf2bpf + tailcall support
in interpreter, so this is expected.

Also, manual inspection shows that both loaded programs from tailcall_3
and tailcall_6 test case emit the expected opcodes:

* tailcall_3 disasm, emit_bpf_tail_call_direct():

  [...]
   b:   push   %rax
   c:   push   %rbx
   d:   push   %r13
   f:   mov    %rdi,%rbx
  12:   movabs $0xffff8d3f5afb0200,%r13
  1c:   mov    %rbx,%rdi
  1f:   mov    %r13,%rsi
  22:   xor    %edx,%edx                 _
  24:   mov    -0x4(%rbp),%eax          |  limit check
  2a:   cmp    $0x20,%eax               |
  2d:   ja     0x0000000000000046       |
  2f:   add    $0x1,%eax                |
  32:   mov    %eax,-0x4(%rbp)          |_
  38:   nopl   0x0(%rax,%rax,1)
  3d:   pop    %r13
  3f:   pop    %rbx
  40:   pop    %rax
  41:   jmpq   0xffffffffffffe377
  [...]

* tailcall_6 disasm, emit_bpf_tail_call_indirect():

  [...]
  47:   movabs $0xffff8d3f59143a00,%rsi
  51:   mov    %edx,%edx
  53:   cmp    %edx,0x24(%rsi)
  56:   jbe    0x0000000000000093        _
  58:   mov    -0x4(%rbp),%eax          |  limit check
  5e:   cmp    $0x20,%eax               |
  61:   ja     0x0000000000000093       |
  63:   add    $0x1,%eax                |
  66:   mov    %eax,-0x4(%rbp)          |_
  6c:   mov    0x110(%rsi,%rdx,8),%rcx
  74:   test   %rcx,%rcx
  77:   je     0x0000000000000093
  79:   pop    %rax
  7a:   mov    0x30(%rcx),%rcx
  7e:   add    $0xb,%rcx
  82:   callq  0x000000000000008e
  87:   pause
  89:   lfence
  8c:   jmp    0x0000000000000087
  8e:   mov    %rcx,(%rsp)
  92:   retq
  [...]

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Tested-by: Tiezhu Yang <yangtiezhu@loongson.cn>
Acked-by: Yonghong Song <yhs@fb.com>
Acked-by: Johan Almbladh <johan.almbladh@anyfinetworks.com>
Acked-by: Paul Chaignon <paul@cilium.io>
Link: https://lore.kernel.org/bpf/CAM1=_QRyRVCODcXo_Y6qOm1iT163HoiSj8U2pZ8Rj3hzMTT=HQ@mail.gmail.com
Link: https://lore.kernel.org/bpf/20210910091900.16119-1-daniel@iogearbox.net
2021-09-13 14:52:22 -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: Add ref_ctr_offset selftests 2021-08-17 00:45:08 +02: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: Verify that rebinding to port < 1024 from BPF works 2021-01-27 18:18:15 -08:00
bpf_cookie.c selftests/bpf: Add bpf_cookie selftests for high-level APIs 2021-08-17 00:45:08 +02:00
bpf_iter.c selftest/bpf: Implement sample UNIX domain socket iterator program. 2021-08-15 00:19:06 -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 selftest/bpf: Fix compilation warnings in 32-bit mode 2020-08-13 16:45:41 -07:00
bpf_tcp_ca.c bpf: selftests: Add dctcp fallback test 2021-08-25 17:40: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: Replace btf__get_from_id() with btf__load_from_kernel_by_id() 2021-07-29 17:23:52 -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_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 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 bpf: selftests: A few improvements to network_helpers.c 2020-07-02 16:09:01 +02:00
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 selftest/bpf: Fix compilation warnings in 32-bit mode 2020-08-13 16:45:41 -07: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: Add test for bpf_get_branch_snapshot 2021-09-13 10:53:50 -07:00
core_retro.c selftests/bpf: Fix spurious test failures in core_retro selftest 2020-08-01 23:10:42 -07:00
cpu_mask.c
d_path.c selftests/bpf: Fix stat probe in d_path test 2020-09-21 16:18:00 -07:00
enable_stats.c
endian.c selftests/bpf: Add byte swapping selftest 2020-07-01 09:06:12 +02:00
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 selftests/bpf: Move existing common networking parts into network_helpers 2020-05-09 00:48:20 +02:00
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_branch_snapshot.c selftests/bpf: Add test for bpf_get_branch_snapshot 2021-09-13 10:53:50 -07: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 selftest/bpf: Fix compilation warnings in 32-bit mode 2020-08-13 16:45:41 -07:00
global_data_init.c selftests/bpf: Fix check in global_data_init. 2020-09-03 17:33:31 -07:00
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 bpf: selftests: Add sk_state to bpf_tcp_helpers.h 2021-08-25 17:40:35 -07:00
ksyms.c selftests/bpf: Ksyms_btf to test typed ksyms 2020-10-02 14:59:25 -07:00
ksyms_btf.c libbpf: Support weak typed ksyms. 2021-08-13 15:56:28 -07:00
ksyms_module.c selftests/bpf: Convert few tests to light skeleton. 2021-05-19 00:41:44 +02:00
l4lb_all.c selftests/bpf: Add subprogs to pyperf, strobemeta, and l4lb_noinline tests 2020-09-03 17:14:40 -07: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 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 bpf: selftests: A few improvements to network_helpers.c 2020-07-02 16:09:01 +02:00
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 selftests/bpf: Move existing common networking parts into network_helpers 2020-05-09 00:48:20 +02:00
map_ptr.c selftests/bpf: Pass page size from userspace in map_ptr 2021-04-08 23:54:47 -07:00
metadata.c selftests/bpf: Test load and dump metadata with btftool and skel 2020-09-15 18:28:27 -07:00
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: Add test for bpf_get_branch_snapshot 2021-09-13 10:53:50 -07:00
netcnt.c selftests/bpf: Move netcnt test under test_progs 2021-08-04 16:18:48 -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 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 selftests/bpf: Add tests for BPF_F_PRESERVE_ELEMS 2020-09-30 23:21:06 -07:00
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
perf_link.c selftests/bpf: Test low-level perf BPF link API 2021-08-17 00:45:08 +02:00
pinning.c libbpf: Add bpf_map__pin_path function 2021-07-23 16:57:03 -07:00
pkt_access.c selftests/bpf: Move existing common networking parts into network_helpers 2020-05-09 00:48:20 +02:00
pkt_md_access.c selftests/bpf: Move existing common networking parts into network_helpers 2020-05-09 00:48:20 +02: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: 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 selftests/bpf: Move existing common networking parts into network_helpers 2020-05-09 00:48:20 +02:00
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: Rename reference_tracking BPF programs 2021-08-06 17:18:33 +02: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 libbpf: Add support for BPF XDP link 2020-07-25 20:37:02 -07:00
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: Fix flaky send_signal test 2021-08-17 14:08:30 -07:00
send_signal_sched_switch.c
signal_pending.c selftests/bpf: Move existing common networking parts into network_helpers 2020-05-09 00:48:20 +02:00
sk_assign.c selftests/bpf: Fix endianness issue in sk_assign 2020-09-18 22:54:52 +02:00
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 selftests/bpf: Test new __sk_buff field hwtstamp 2021-09-10 23:20:13 +02:00
skb_helpers.c bpf, selftests: Test probe_* helpers from SCHED_CLS 2020-06-01 14:38:21 -07:00
skeleton.c selftests/bpf: Add checks for X__elf_bytes() skeleton helper 2021-09-07 17:44:39 -07:00
snprintf.c selftest/bpf: Extend the bpf_snprintf() test for "%c". 2021-08-15 00:19:10 -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: Reduce more flakyness in sockmap_listen 2021-08-26 11:55:25 -07:00
sockopt.c
sockopt_inherit.c selftests/bpf: Fix potential unreleased lock 2021-08-27 09:45:59 -07:00
sockopt_multi.c selftests/bpf: Fix error return code in run_getsockopt_test() 2020-11-16 22:19:07 +01:00
sockopt_qos_to_cc.c selftests/bpf: Add tests for {set|get} socket option from setsockopt BPF 2021-08-20 01:10:01 +02:00
sockopt_sk.c selftests/bpf: Pass page size from userspace in sockopt_sk 2021-04-08 23:54:47 -07:00
spinlock.c selftests/bpf: Move existing common networking parts into network_helpers 2020-05-09 00:48:20 +02: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
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, selftests: Replicate tailcall limit test for indirect call case 2021-09-13 14:52:22 -07: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
task_pt_regs.c bpf: selftests: Add bpf_task_pt_regs() selftest 2021-08-25 10:37:05 -07: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: Move netcnt test under test_progs 2021-08-04 16:18:48 -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 bpf: selftests: A few improvements to network_helpers.c 2020-07-02 16:09:01 +02:00
tcpbpf_user.c selftests/bpf: Add Userspace tests for TCP_WINDOW_CLAMP 2020-12-03 17:23:24 -08:00
test_bpffs.c selftests/bpf: Add bpffs preload test. 2020-08-20 16:02:36 +02:00
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: Reduce flakyness in timer_mim 2021-08-23 18:01:47 -07:00
tp_attach_query.c
trace_ext.c selftests/bpf: Adding test for arg dereference in extension trace 2020-09-29 13:09:24 -07:00
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 selftests/bpf: Make test_varlen work with 32-bit user-space arch 2020-08-13 16:45:41 -07:00
vmlinux.c
xdp.c selftests/bpf: Move existing common networking parts into network_helpers 2020-05-09 00:48:20 +02:00
xdp_adjust_tail.c selftests/bpf: Xdp_adjust_tail add grow tail tests 2020-05-14 21:21:57 -07:00
xdp_attach.c
xdp_bonding.c selftests/bpf: Fix running of XDP bonding tests 2021-08-13 23:48:16 +02:00
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 selftests/bpf: Initialize duration in xdp_noinline.c 2020-10-02 16:46:20 +02:00
xdp_perf.c