Home
last modified time | relevance | path

Searched refs:flow_keys (Results 1 – 25 of 47) sorted by relevance

12

/linux-6.3-rc2/net/core/
A Dflow_dissector.c835 if (flow_keys->is_frag) in __skb_flow_bpf_to_target()
839 if (flow_keys->is_encap) in __skb_flow_bpf_to_target()
896 struct bpf_flow_keys *flow_keys = ctx->flow_keys; in bpf_flow_dissect() local
900 memset(flow_keys, 0, sizeof(*flow_keys)); in bpf_flow_dissect()
903 flow_keys->thoff = flow_keys->nhoff; in bpf_flow_dissect()
915 flow_keys->nhoff = clamp_t(u16, flow_keys->nhoff, nhoff, hlen); in bpf_flow_dissect()
916 flow_keys->thoff = clamp_t(u16, flow_keys->thoff, in bpf_flow_dissect()
1031 .flow_keys = &flow_keys, in __skb_flow_dissect()
1737 struct flow_keys keys; in __skb_get_hash_symmetric()
1761 struct flow_keys keys; in __skb_get_hash()
[all …]
/linux-6.3-rc2/include/net/
A Dflow_dissector.h357 struct flow_keys { struct
372 offsetof(struct flow_keys, FLOW_KEYS_HASH_START_FIELD) argument
374 __be32 flow_get_u32_src(const struct flow_keys *flow);
375 __be32 flow_get_u32_dst(const struct flow_keys *flow);
393 const struct flow_keys *flow);
395 static inline bool flow_keys_have_l4(const struct flow_keys *keys) in flow_keys_have_l4()
400 u32 flow_hash_from_keys(struct flow_keys *keys);
419 struct bpf_flow_keys *flow_keys; member
A Dflow.h16 struct flow_keys;
194 __u32 __get_hash_from_flowi6(const struct flowi6 *fl6, struct flow_keys *keys);
A Dip_fib.h353 struct flow_keys *flkeys) in fib4_rules_early_flow_dissect()
414 struct flow_keys *flkeys) in fib4_rules_early_flow_dissect()
517 const struct sk_buff *skb, struct flow_keys *flkeys);
A Dip6_fib.h606 struct flow_keys *flkeys) in fib6_rules_early_flow_dissect()
649 struct flow_keys *flkeys) in fib6_rules_early_flow_dissect()
A Dip6_route.h151 const struct sk_buff *skb, struct flow_keys *hkeys);
/linux-6.3-rc2/tools/testing/selftests/bpf/prog_tests/
A Dflow_dissector_load_bytes.c7 struct bpf_flow_keys flow_keys; in serial_test_flow_dissector_load_bytes() local
32 .data_out = &flow_keys, in serial_test_flow_dissector_load_bytes()
33 .data_size_out = sizeof(flow_keys), in serial_test_flow_dissector_load_bytes()
45 ASSERT_EQ(topts.data_size_out, sizeof(flow_keys), in serial_test_flow_dissector_load_bytes()
A Dflow_dissector.c526 struct bpf_flow_keys flow_keys = {}; in run_tests_skb_less() local
544 err = bpf_map_lookup_elem(keys_fd, &key, &flow_keys); in run_tests_skb_less()
547 CHECK_FLOW_KEYS(tests[i].name, flow_keys, tests[i].keys); in run_tests_skb_less()
613 struct bpf_flow_keys flow_keys; in test_flow_dissector() local
617 .data_out = &flow_keys, in test_flow_dissector()
634 ASSERT_EQ(topts.data_size_out, sizeof(flow_keys), in test_flow_dissector()
636 CHECK_FLOW_KEYS(tests[i].name, flow_keys, tests[i].keys); in test_flow_dissector()
/linux-6.3-rc2/Documentation/bpf/
A Dprog_flow_dissector.rst21 limited set of fields is allowed: ``data``, ``data_end`` and ``flow_keys``.
22 ``flow_keys`` is ``struct bpf_flow_keys`` and contains flow dissector input
54 skb->data + flow_keys->nhoff point to the first byte of L3_HEADER
55 flow_keys->thoff = nhoff
56 flow_keys->n_proto = ETHER_TYPE
71 skb->data + flow_keys->nhoff point the to first byte of TCI
72 flow_keys->thoff = nhoff
73 flow_keys->n_proto = TPID
90 skb->data + flow_keys->nhoff point the to first byte of L3_HEADER
91 flow_keys->thoff = nhoff
[all …]
/linux-6.3-rc2/tools/testing/selftests/bpf/progs/
A Dbpf_flow.c98 __u16 thoff = skb->flow_keys->thoff; in bpf_flow_dissect_get_header()
118 struct bpf_flow_keys *keys = skb->flow_keys; in parse_eth_proto()
146 struct bpf_flow_keys *keys = skb->flow_keys; in _dissect()
167 struct bpf_flow_keys *keys = skb->flow_keys; in parse_ip_proto()
258 struct bpf_flow_keys *keys = skb->flow_keys; in parse_ipv6_proto()
278 struct bpf_flow_keys *keys = skb->flow_keys; in PROG()
326 struct bpf_flow_keys *keys = skb->flow_keys; in PROG()
348 struct bpf_flow_keys *keys = skb->flow_keys; in PROG()
366 struct bpf_flow_keys *keys = skb->flow_keys; in PROG()
394 struct bpf_flow_keys *keys = skb->flow_keys; in PROG()
[all …]
/linux-6.3-rc2/net/sched/
A Dcls_flow.c67 static u32 flow_get_src(const struct sk_buff *skb, const struct flow_keys *flow) in flow_get_src()
88 const struct flow_keys *flow) in flow_get_proto()
94 const struct flow_keys *flow) in flow_get_proto_src()
103 const struct flow_keys *flow) in flow_get_proto_dst()
153 const struct flow_keys *flow) in flow_get_nfct_src()
166 const struct flow_keys *flow) in flow_get_nfct_dst()
179 const struct flow_keys *flow) in flow_get_nfct_proto_src()
187 const struct flow_keys *flow) in flow_get_nfct_proto_dst()
309 struct flow_keys flow_keys; in flow_classify() local
316 skb_flow_dissect_flow_keys(skb, &flow_keys, 0); in flow_classify()
[all …]
/linux-6.3-rc2/drivers/net/ethernet/cisco/enic/
A Denic_clsf.c21 int enic_addfltr_5t(struct enic *enic, struct flow_keys *keys, u16 rq) in enic_addfltr_5t()
157 struct flow_keys *k) in htbl_key_search()
174 struct flow_keys keys; in enic_rx_flow_steer()
A Denic_clsf.h10 int enic_addfltr_5t(struct enic *enic, struct flow_keys *keys, u16 rq);
A Denic.h98 struct flow_keys keys;
/linux-6.3-rc2/drivers/net/ethernet/mellanox/mlx5/core/en/
A Dtc_ct.c1372 struct flow_keys flow_keys; in mlx5_tc_ct_skb_to_tuple() local
1379 if (flow_keys.basic.ip_proto != IPPROTO_TCP && in mlx5_tc_ct_skb_to_tuple()
1380 flow_keys.basic.ip_proto != IPPROTO_UDP && in mlx5_tc_ct_skb_to_tuple()
1381 flow_keys.basic.ip_proto != IPPROTO_GRE) in mlx5_tc_ct_skb_to_tuple()
1384 if (flow_keys.basic.ip_proto == IPPROTO_TCP || in mlx5_tc_ct_skb_to_tuple()
1385 flow_keys.basic.ip_proto == IPPROTO_UDP) { in mlx5_tc_ct_skb_to_tuple()
1386 tuple->port.src = flow_keys.ports.src; in mlx5_tc_ct_skb_to_tuple()
1387 tuple->port.dst = flow_keys.ports.dst; in mlx5_tc_ct_skb_to_tuple()
1389 tuple->n_proto = flow_keys.basic.n_proto; in mlx5_tc_ct_skb_to_tuple()
1390 tuple->ip_proto = flow_keys.basic.ip_proto; in mlx5_tc_ct_skb_to_tuple()
[all …]
A Dptp.h53 struct flow_keys fk; in mlx5e_use_ptpsq()
/linux-6.3-rc2/net/ipv4/
A Dnetfilter.c28 struct flow_keys flkeys; in ip_route_me_harder()
A Droute.c1888 struct flow_keys *hash_keys) in ip_multipath_l3_keys()
1928 struct flow_keys keys, hash_keys; in fib_multipath_custom_hash_outer()
1957 struct flow_keys keys, hash_keys; in fib_multipath_custom_hash_inner()
2017 struct flow_keys hash_keys; in fib_multipath_custom_hash_fl4()
2040 const struct sk_buff *skb, struct flow_keys *flkeys) in fib_multipath_hash()
2043 struct flow_keys hash_keys; in fib_multipath_hash()
2062 struct flow_keys keys; in fib_multipath_hash()
2096 struct flow_keys keys; in fib_multipath_hash()
2142 struct flow_keys *hkeys) in ip_mkroute_input()
2227 struct flow_keys *flkeys = NULL, _flkeys; in ip_route_input_slow()
/linux-6.3-rc2/drivers/net/ethernet/mellanox/mlx5/core/
A Den_arfs.c635 const struct flow_keys *fk, in arfs_alloc_rule()
674 static bool arfs_cmp(const struct arfs_tuple *tuple, const struct flow_keys *fk) in arfs_cmp()
692 const struct flow_keys *fk) in arfs_find_rule()
713 struct flow_keys fk; in mlx5e_rx_flow_steer()
/linux-6.3-rc2/drivers/net/ethernet/intel/ice/
A Dice_arfs.c300 ice_arfs_build_entry(struct ice_vsi *vsi, const struct flow_keys *fk, in ice_arfs_build_entry()
402 struct flow_keys fk; in ice_rx_flow_steer()
/linux-6.3-rc2/drivers/net/bonding/
A Dbond_main.c215 .offset = offsetof(struct flow_keys, control),
219 .offset = offsetof(struct flow_keys, basic),
223 .offset = offsetof(struct flow_keys, addrs.v4addrs),
227 .offset = offsetof(struct flow_keys, addrs.v6addrs),
235 .offset = offsetof(struct flow_keys, ports),
239 .offset = offsetof(struct flow_keys, icmp),
243 .offset = offsetof(struct flow_keys, vlan),
247 .offset = offsetof(struct flow_keys, tags),
251 .offset = offsetof(struct flow_keys, keyid),
4121 struct flow_keys flow; in __bond_xmit_hash()
[all …]
/linux-6.3-rc2/net/bpf/
A Dtest_run.c1478 struct bpf_flow_keys flow_keys; in bpf_prog_test_run_flow_dissector() local
1512 ctx.flow_keys = &flow_keys; in bpf_prog_test_run_flow_dissector()
1526 ret = bpf_test_finish(kattr, uattr, &flow_keys, NULL, in bpf_prog_test_run_flow_dissector()
1527 sizeof(flow_keys), retval, duration); in bpf_prog_test_run_flow_dissector()
/linux-6.3-rc2/net/openvswitch/
A Dactions.c75 static struct action_flow_keys __percpu *flow_keys; variable
83 struct action_flow_keys *keys = this_cpu_ptr(flow_keys); in clone_key()
1616 flow_keys = alloc_percpu(struct action_flow_keys); in action_fifos_init()
1617 if (!flow_keys) { in action_fifos_init()
1628 free_percpu(flow_keys); in action_fifos_exit()
/linux-6.3-rc2/tools/testing/selftests/bpf/verifier/
A Dcgroup_skb.c151 offsetof(struct __sk_buff, flow_keys)),
/linux-6.3-rc2/net/ipv6/
A Dnetfilter.c28 struct flow_keys flkeys; in ip6_route_me_harder()

Completed in 67 milliseconds

12