| /tools/lib/bpf/ |
| A D | netlink.c | 619 static int tc_qdisc_create_excl(struct bpf_tc_hook *hook) in tc_qdisc_create_excl() 624 static int tc_qdisc_delete(struct bpf_tc_hook *hook) in tc_qdisc_delete() 629 int bpf_tc_hook_create(struct bpf_tc_hook *hook) in bpf_tc_hook_create() 633 if (!hook || !OPTS_VALID(hook, bpf_tc_hook) || in bpf_tc_hook_create() 641 static int __bpf_tc_detach(const struct bpf_tc_hook *hook, 645 int bpf_tc_hook_destroy(struct bpf_tc_hook *hook) in bpf_tc_hook_destroy() 647 if (!hook || !OPTS_VALID(hook, bpf_tc_hook) || in bpf_tc_hook_destroy() 741 !OPTS_VALID(hook, bpf_tc_hook) || in bpf_tc_attach() 815 !OPTS_VALID(hook, bpf_tc_hook) || in __bpf_tc_detach() 867 int bpf_tc_detach(const struct bpf_tc_hook *hook, in bpf_tc_detach() [all …]
|
| A D | libbpf.h | 1319 struct bpf_tc_hook { struct 1341 LIBBPF_API int bpf_tc_hook_create(struct bpf_tc_hook *hook); argument 1342 LIBBPF_API int bpf_tc_hook_destroy(struct bpf_tc_hook *hook); 1343 LIBBPF_API int bpf_tc_attach(const struct bpf_tc_hook *hook, 1345 LIBBPF_API int bpf_tc_detach(const struct bpf_tc_hook *hook, 1347 LIBBPF_API int bpf_tc_query(const struct bpf_tc_hook *hook,
|
| /tools/testing/selftests/bpf/prog_tests/ |
| A D | bpf_qdisc.c | 18 DECLARE_LIBBPF_OPTS(bpf_tc_hook, hook, .ifindex = LO_IFINDEX, in do_test() 84 DECLARE_LIBBPF_OPTS(bpf_tc_hook, hook, in test_qdisc_attach_to_mq() 115 DECLARE_LIBBPF_OPTS(bpf_tc_hook, hook, .ifindex = LO_IFINDEX, in test_qdisc_attach_to_non_root()
|
| A D | tc_redirect.c | 330 static int qdisc_clsact_create(struct bpf_tc_hook *qdisc_hook, int ifindex) in qdisc_clsact_create() 347 static int xgress_filter_add(struct bpf_tc_hook *qdisc_hook, in xgress_filter_add() 385 LIBBPF_OPTS(bpf_tc_hook, qdisc_src_fwd); in netns_load_bpf() 386 LIBBPF_OPTS(bpf_tc_hook, qdisc_dst_fwd); in netns_load_bpf() 691 LIBBPF_OPTS(bpf_tc_hook, qdisc_src_fwd); in netns_load_dtime_bpf() 692 LIBBPF_OPTS(bpf_tc_hook, qdisc_dst_fwd); in netns_load_dtime_bpf() 693 LIBBPF_OPTS(bpf_tc_hook, qdisc_src); in netns_load_dtime_bpf() 694 LIBBPF_OPTS(bpf_tc_hook, qdisc_dst); in netns_load_dtime_bpf() 1154 LIBBPF_OPTS(bpf_tc_hook, qdisc_tun_fwd); in test_tc_redirect_peer_l3() 1155 LIBBPF_OPTS(bpf_tc_hook, qdisc_dst_fwd); in test_tc_redirect_peer_l3()
|
| A D | tc_bpf.c | 26 static int test_tc_bpf_basic(const struct bpf_tc_hook *hook, int fd) in test_tc_bpf_basic() 69 static int test_tc_bpf_api(struct bpf_tc_hook *hook, int fd) in test_tc_bpf_api() 72 DECLARE_LIBBPF_OPTS(bpf_tc_hook, inv_hook, .attach_point = BPF_TC_INGRESS); in test_tc_bpf_api() 333 DECLARE_LIBBPF_OPTS(bpf_tc_hook, hook, .ifindex = LO_IFINDEX, in tc_bpf_root()
|
| A D | decap_sanity.c | 18 LIBBPF_OPTS(bpf_tc_hook, qdisc_hook, .attach_point = BPF_TC_EGRESS); in test_decap_sanity()
|
| A D | tcp_custom_syncookie.c | 52 LIBBPF_OPTS(bpf_tc_hook, qdisc_lo, .attach_point = BPF_TC_INGRESS); in setup_tc()
|
| A D | xfrm_info.c | 72 static int attach_tc_prog(struct bpf_tc_hook *hook, int igr_fd, int egr_fd) in attach_tc_prog() 294 LIBBPF_OPTS(bpf_tc_hook, tc_hook, .attach_point = BPF_TC_INGRESS); in _test_xfrm_info()
|
| A D | xdp_context_test_run.c | 177 LIBBPF_OPTS(bpf_tc_hook, tc_hook, .attach_point = BPF_TC_INGRESS); in test_xdp_context_veth() 262 LIBBPF_OPTS(bpf_tc_hook, tc_hook, .attach_point = BPF_TC_INGRESS); in test_xdp_context_tuntap()
|
| A D | xdp_do_redirect.c | 42 static int attach_tc_prog(struct bpf_tc_hook *hook, int fd) in attach_tc_prog() 116 DECLARE_LIBBPF_OPTS(bpf_tc_hook, tc_hook, in test_xdp_do_redirect()
|
| A D | cgroup_ancestor.c | 18 struct bpf_tc_hook qdisc;
|
| A D | xdp_vlan.c | 73 LIBBPF_OPTS(bpf_tc_hook, tc_hook, .attach_point = BPF_TC_EGRESS); in xdp_vlan()
|
| A D | crypto_sanity.c | 82 LIBBPF_OPTS(bpf_tc_hook, qdisc_hook, .attach_point = BPF_TC_EGRESS); in test_crypto_sanity()
|
| A D | assign_reuse.c | 84 DECLARE_LIBBPF_OPTS(bpf_tc_hook, tc_hook, in run_assign_reuse()
|
| A D | btf_skc_cls_ingress.c | 35 LIBBPF_OPTS(bpf_tc_hook, qdisc_lo, .attach_point = BPF_TC_INGRESS); in prepare_netns()
|
| A D | vrf_socket_lookup.c | 107 LIBBPF_OPTS(bpf_tc_hook, hook, .attach_point = BPF_TC_INGRESS); in attach_progs()
|
| A D | tc_links.c | 526 LIBBPF_OPTS(bpf_tc_hook, tc_hook, .ifindex = loopback); in test_tc_chain_classic() 1580 LIBBPF_OPTS(bpf_tc_hook, tc_hook, .ifindex = loopback); in test_tc_chain_mixed() 1688 LIBBPF_OPTS(bpf_tc_hook, tc_hook, in test_tc_links_ingress() 1854 LIBBPF_OPTS(bpf_tc_hook, tc_hook); in test_tc_links_dev_mixed()
|
| A D | test_tunnel.c | 539 DECLARE_LIBBPF_OPTS(bpf_tc_hook, hook, .ifindex = ifindex, in attach_tc_prog()
|
| A D | tc_opts.c | 566 LIBBPF_OPTS(bpf_tc_hook, tc_hook, .ifindex = loopback); in test_tc_chain_classic() 2247 LIBBPF_OPTS(bpf_tc_hook, tc_hook, .ifindex = loopback); in test_tc_opts_delete_empty() 2279 LIBBPF_OPTS(bpf_tc_hook, tc_hook, .ifindex = loopback); in test_tc_chain_mixed()
|
| /tools/testing/selftests/bpf/ |
| A D | xdp_synproxy.c | 33 LIBBPF_OPTS(bpf_tc_hook, hook, in cleanup() 231 LIBBPF_OPTS(bpf_tc_hook, hook, in syncookie_attach()
|