/Linux-v6.6/net/netfilter/ |
D | nf_flow_table_offload.c | 216 flow_action_entry_next(struct nf_flow_rule *flow_rule) in flow_action_entry_next() argument 218 int i = flow_rule->rule->action.num_entries++; in flow_action_entry_next() 220 return &flow_rule->rule->action.entries[i]; in flow_action_entry_next() 226 struct nf_flow_rule *flow_rule) in flow_offload_eth_src() argument 228 struct flow_action_entry *entry0 = flow_action_entry_next(flow_rule); in flow_offload_eth_src() 229 struct flow_action_entry *entry1 = flow_action_entry_next(flow_rule); in flow_offload_eth_src() 273 struct nf_flow_rule *flow_rule) in flow_offload_eth_dst() argument 275 struct flow_action_entry *entry0 = flow_action_entry_next(flow_rule); in flow_offload_eth_dst() 276 struct flow_action_entry *entry1 = flow_action_entry_next(flow_rule); in flow_offload_eth_dst() 330 struct nf_flow_rule *flow_rule) in flow_offload_ipv4_snat() argument [all …]
|
D | nf_flow_table_inet.c | 44 struct nf_flow_rule *flow_rule) in nf_flow_rule_route_inet() argument 51 err = nf_flow_rule_route_ipv4(net, flow, dir, flow_rule); in nf_flow_rule_route_inet() 54 err = nf_flow_rule_route_ipv6(net, flow, dir, flow_rule); in nf_flow_rule_route_inet()
|
/Linux-v6.6/include/net/ |
D | flow_offload.h | 95 struct flow_rule; 97 void flow_rule_match_meta(const struct flow_rule *rule, 99 void flow_rule_match_basic(const struct flow_rule *rule, 101 void flow_rule_match_control(const struct flow_rule *rule, 103 void flow_rule_match_eth_addrs(const struct flow_rule *rule, 105 void flow_rule_match_vlan(const struct flow_rule *rule, 107 void flow_rule_match_cvlan(const struct flow_rule *rule, 109 void flow_rule_match_arp(const struct flow_rule *rule, 111 void flow_rule_match_ipv4_addrs(const struct flow_rule *rule, 113 void flow_rule_match_ipv6_addrs(const struct flow_rule *rule, [all …]
|
/Linux-v6.6/net/core/ |
D | flow_offload.c | 10 struct flow_rule *flow_rule_alloc(unsigned int num_actions) in flow_rule_alloc() 12 struct flow_rule *rule; in flow_rule_alloc() 58 void flow_rule_match_meta(const struct flow_rule *rule, in flow_rule_match_meta() 65 void flow_rule_match_basic(const struct flow_rule *rule, in flow_rule_match_basic() 72 void flow_rule_match_control(const struct flow_rule *rule, in flow_rule_match_control() 79 void flow_rule_match_eth_addrs(const struct flow_rule *rule, in flow_rule_match_eth_addrs() 86 void flow_rule_match_vlan(const struct flow_rule *rule, in flow_rule_match_vlan() 93 void flow_rule_match_cvlan(const struct flow_rule *rule, in flow_rule_match_cvlan() 100 void flow_rule_match_arp(const struct flow_rule *rule, in flow_rule_match_arp() 107 void flow_rule_match_ipv4_addrs(const struct flow_rule *rule, in flow_rule_match_ipv4_addrs() [all …]
|
/Linux-v6.6/drivers/net/ethernet/netronome/nfp/flower/ |
D | main.h | 561 struct flow_rule *rule); 571 struct flow_rule *rule); 575 struct flow_rule *rule, 580 struct flow_rule *rule); 584 struct flow_rule *rule); 587 struct nfp_flower_ipv4 *msk, struct flow_rule *rule); 590 struct nfp_flower_ipv6 *msk, struct flow_rule *rule); 592 nfp_flower_compile_geneve_opt(u8 *ext, u8 *msk, struct flow_rule *rule); 596 struct flow_rule *rule); 600 struct flow_rule *rule); [all …]
|
D | match.c | 25 struct flow_rule *rule) in nfp_flower_compile_tci() 54 struct flow_rule *rule, u8 key_type, bool qinq_sup) in nfp_flower_compile_meta_tci() 97 struct flow_rule *rule) in nfp_flower_compile_mac() 121 struct flow_rule *rule, in nfp_flower_compile_mpls() 176 struct flow_rule *rule, in nfp_flower_compile_mac_mpls() 190 struct flow_rule *rule) in nfp_flower_compile_tport() 210 struct nfp_flower_ip_ext *msk, struct flow_rule *rule) in nfp_flower_compile_ip_ext() 320 struct flow_rule *rule) in nfp_flower_compile_vlan() 336 struct nfp_flower_ipv4 *msk, struct flow_rule *rule) in nfp_flower_compile_ipv4() 358 struct nfp_flower_ipv6 *msk, struct flow_rule *rule) in nfp_flower_compile_ipv6() [all …]
|
D | conntrack.c | 26 static struct flow_action_entry *get_flow_act(struct flow_rule *rule, 58 struct flow_rule *rule = flow_cls_offload_flow_rule(flow); in is_pre_ct_flow() 90 struct flow_rule *rule = flow_cls_offload_flow_rule(flow); in is_post_ct_flow() 135 static void *get_mangled_key(struct flow_rule *rule, void *buf, in get_mangled_key() 172 static void *get_mangled_tos_ttl(struct flow_rule *rule, void *buf, in get_mangled_tos_ttl() 484 struct flow_rule *rule) in nfp_ct_check_vlan_merge() 709 static int nfp_fl_merge_actions_offload(struct flow_rule **rules, in nfp_fl_merge_actions_offload() 718 struct flow_rule *a_rule; in nfp_fl_merge_actions_offload() 815 struct flow_rule *rules[NFP_MAX_ENTRY_RULES]; in nfp_fl_ct_add_offload() 1401 static struct net_device *get_netdev_from_rule(struct flow_rule *rule) in get_netdev_from_rule() [all …]
|
/Linux-v6.6/drivers/net/ethernet/mellanox/mlx5/core/en/tc/ |
D | ct_fs_smfs.c | 245 mlx5_ct_fs_smfs_ct_validate_flow_rule(struct mlx5_ct_fs *fs, struct flow_rule *flow_rule) in mlx5_ct_fs_smfs_ct_validate_flow_rule() argument 254 if (!mlx5_tc_ct_valid_used_dissector_keys(flow_rule->match.dissector->used_keys)) { in mlx5_ct_fs_smfs_ct_validate_flow_rule() 256 flow_rule->match.dissector->used_keys); in mlx5_ct_fs_smfs_ct_validate_flow_rule() 260 flow_rule_match_basic(flow_rule, &basic); in mlx5_ct_fs_smfs_ct_validate_flow_rule() 261 flow_rule_match_control(flow_rule, &control); in mlx5_ct_fs_smfs_ct_validate_flow_rule() 262 flow_rule_match_ipv4_addrs(flow_rule, &ipv4_addrs); in mlx5_ct_fs_smfs_ct_validate_flow_rule() 263 flow_rule_match_ipv6_addrs(flow_rule, &ipv6_addrs); in mlx5_ct_fs_smfs_ct_validate_flow_rule() 265 flow_rule_match_ports(flow_rule, &ports); in mlx5_ct_fs_smfs_ct_validate_flow_rule() 267 flow_rule_match_tcp(flow_rule, &tcp); in mlx5_ct_fs_smfs_ct_validate_flow_rule() 297 struct mlx5_flow_attr *attr, struct flow_rule *flow_rule) in mlx5_ct_fs_smfs_ct_rule_add() argument [all …]
|
D | ct_fs.h | 26 struct flow_rule *flow_rule);
|
D | ct_fs_dmfs.c | 31 struct mlx5_flow_attr *attr, struct flow_rule *flow_rule) in mlx5_ct_fs_dmfs_ct_rule_add() argument
|
D | int_port.c | 68 struct mlx5_flow_handle *flow_rule; in mlx5e_int_port_create_rx_rule() local 93 flow_rule = mlx5_add_flow_rules(esw->offloads.ft_offloads, spec, in mlx5e_int_port_create_rx_rule() 95 if (IS_ERR(flow_rule)) in mlx5e_int_port_create_rx_rule() 97 PTR_ERR(flow_rule)); in mlx5e_int_port_create_rx_rule() 101 return flow_rule; in mlx5e_int_port_create_rx_rule()
|
/Linux-v6.6/drivers/net/ethernet/mellanox/mlx5/core/en/ |
D | tc_ct.c | 97 struct mlx5_flow_handle *flow_rule; member 229 mlx5_tc_ct_rule_to_tuple(struct mlx5_ct_tuple *tuple, struct flow_rule *rule) in mlx5_tc_ct_rule_to_tuple() 280 struct flow_rule *rule) in mlx5_tc_ct_rule_to_tuple_nat() 368 struct flow_rule *rule) in mlx5_tc_ct_set_tuple_match() 536 mlx5_tc_ct_get_ct_metadata_action(struct flow_rule *flow_rule) in mlx5_tc_ct_get_ct_metadata_action() argument 538 struct flow_action *flow_action = &flow_rule->action; in mlx5_tc_ct_get_ct_metadata_action() 668 struct flow_rule *flow_rule, in mlx5_tc_ct_entry_create_nat() argument 671 struct flow_action *flow_action = &flow_rule->action; in mlx5_tc_ct_entry_create_nat() 706 struct flow_rule *flow_rule, in mlx5_tc_ct_entry_create_mod_hdr() argument 717 meta = mlx5_tc_ct_get_ct_metadata_action(flow_rule); in mlx5_tc_ct_entry_create_mod_hdr() [all …]
|
D | tc_tun_vxlan.c | 22 struct flow_rule *rule = flow_cls_offload_flow_rule(f); in mlx5e_tc_tun_check_udp_dport_vxlan() 114 struct flow_rule *rule = flow_cls_offload_flow_rule(f); in mlx5e_tc_tun_parse_vxlan_gbp_option() 163 struct flow_rule *rule = flow_cls_offload_flow_rule(f); in mlx5e_tc_tun_parse_vxlan()
|
D | tc_tun_geneve.c | 25 struct flow_rule *rule = flow_cls_offload_flow_rule(f); in mlx5e_tc_tun_check_udp_dport_geneve() 127 struct flow_rule *rule = flow_cls_offload_flow_rule(f); in mlx5e_tc_tun_parse_geneve_vni() 161 struct flow_rule *rule = flow_cls_offload_flow_rule(f); in mlx5e_tc_tun_parse_geneve_options()
|
/Linux-v6.6/drivers/net/ethernet/mellanox/mlx5/core/ |
D | rdma.c | 26 struct mlx5_flow_handle *flow_rule = NULL; in mlx5_rdma_enable_roce_steering() local 78 flow_rule = mlx5_add_flow_rules(ft, spec, &flow_act, NULL, 0); in mlx5_rdma_enable_roce_steering() 79 if (IS_ERR(flow_rule)) { in mlx5_rdma_enable_roce_steering() 80 err = PTR_ERR(flow_rule); in mlx5_rdma_enable_roce_steering() 90 roce->allow_rule = flow_rule; in mlx5_rdma_enable_roce_steering()
|
D | en_rep.c | 404 struct mlx5_flow_handle *flow_rule; in mlx5e_sqs2vport_add_peers_rules() local 417 flow_rule = mlx5_eswitch_add_send_to_vport_rule(peer_esw, esw, in mlx5e_sqs2vport_add_peers_rules() 419 if (IS_ERR(flow_rule)) { in mlx5e_sqs2vport_add_peers_rules() 421 return PTR_ERR(flow_rule); in mlx5e_sqs2vport_add_peers_rules() 424 sq_peer->rule = flow_rule; in mlx5e_sqs2vport_add_peers_rules() 429 mlx5_eswitch_del_send_to_vport_rule(flow_rule); in mlx5e_sqs2vport_add_peers_rules() 441 struct mlx5_flow_handle *flow_rule; in mlx5e_sqs2vport_start() local 465 flow_rule = mlx5_eswitch_add_send_to_vport_rule(esw, esw, rep, in mlx5e_sqs2vport_start() 467 if (IS_ERR(flow_rule)) { in mlx5e_sqs2vport_start() 468 err = PTR_ERR(flow_rule); in mlx5e_sqs2vport_start() [all …]
|
D | eswitch_offloads.c | 931 struct mlx5_flow_handle *flow_rule; in mlx5_eswitch_add_send_to_vport_rule() local 938 flow_rule = ERR_PTR(-ENOMEM); in mlx5_eswitch_add_send_to_vport_rule() 1002 flow_rule = mlx5_add_flow_rules(mlx5_eswitch_get_slow_fdb(on_esw), in mlx5_eswitch_add_send_to_vport_rule() 1004 if (IS_ERR(flow_rule)) in mlx5_eswitch_add_send_to_vport_rule() 1006 PTR_ERR(flow_rule)); in mlx5_eswitch_add_send_to_vport_rule() 1009 return flow_rule; in mlx5_eswitch_add_send_to_vport_rule() 1029 struct mlx5_flow_handle *flow_rule; in mlx5_eswitch_add_send_to_vport_meta_rule() local 1051 flow_rule = mlx5_add_flow_rules(mlx5_eswitch_get_slow_fdb(esw), in mlx5_eswitch_add_send_to_vport_meta_rule() 1053 if (IS_ERR(flow_rule)) in mlx5_eswitch_add_send_to_vport_meta_rule() 1055 vport_num, PTR_ERR(flow_rule)); in mlx5_eswitch_add_send_to_vport_meta_rule() [all …]
|
D | eswitch.c | 64 struct mlx5_flow_handle *flow_rule; member 212 struct mlx5_flow_handle *flow_rule = NULL; in __esw_fdb_set_vport_rule() local 255 flow_rule = in __esw_fdb_set_vport_rule() 258 if (IS_ERR(flow_rule)) { in __esw_fdb_set_vport_rule() 261 dmac_v, dmac_c, vport, PTR_ERR(flow_rule)); in __esw_fdb_set_vport_rule() 262 flow_rule = NULL; in __esw_fdb_set_vport_rule() 266 return flow_rule; in __esw_fdb_set_vport_rule() 330 vaddr->flow_rule = esw_fdb_set_vport_rule(esw, mac, vport); in esw_add_uc_addr() 333 vport, mac, vaddr->flow_rule); in esw_add_uc_addr() 359 if (vaddr->flow_rule) in esw_del_uc_addr() [all …]
|
/Linux-v6.6/drivers/net/ethernet/mellanox/mlx5/core/esw/ |
D | legacy.c | 255 struct mlx5_flow_handle *flow_rule; in _mlx5_eswitch_set_vepa_locked() local 283 flow_rule = mlx5_add_flow_rules(esw->fdb_table.legacy.vepa_fdb, spec, in _mlx5_eswitch_set_vepa_locked() 285 if (IS_ERR(flow_rule)) { in _mlx5_eswitch_set_vepa_locked() 286 err = PTR_ERR(flow_rule); in _mlx5_eswitch_set_vepa_locked() 289 esw->fdb_table.legacy.vepa_uplink_rule = flow_rule; in _mlx5_eswitch_set_vepa_locked() 296 flow_rule = mlx5_add_flow_rules(esw->fdb_table.legacy.vepa_fdb, NULL, in _mlx5_eswitch_set_vepa_locked() 298 if (IS_ERR(flow_rule)) { in _mlx5_eswitch_set_vepa_locked() 299 err = PTR_ERR(flow_rule); in _mlx5_eswitch_set_vepa_locked() 302 esw->fdb_table.legacy.vepa_star_rule = flow_rule; in _mlx5_eswitch_set_vepa_locked()
|
/Linux-v6.6/include/net/netfilter/ |
D | nf_flow_table.h | 49 struct flow_rule *rule; 63 struct nf_flow_rule *flow_rule); 320 struct nf_flow_rule *flow_rule); 323 struct nf_flow_rule *flow_rule);
|
/Linux-v6.6/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/ |
D | ingress_ofld.c | 125 struct mlx5_flow_handle *flow_rule; in esw_acl_ingress_src_port_drop_create() local 130 flow_rule = mlx5_add_flow_rules(vport->ingress.acl, NULL, &flow_act, NULL, 0); in esw_acl_ingress_src_port_drop_create() 131 if (IS_ERR(flow_rule)) { in esw_acl_ingress_src_port_drop_create() 132 err = PTR_ERR(flow_rule); in esw_acl_ingress_src_port_drop_create() 136 vport->ingress.offloads.drop_rule = flow_rule; in esw_acl_ingress_src_port_drop_create()
|
/Linux-v6.6/drivers/net/ethernet/mellanox/mlxsw/ |
D | spectrum_flower.c | 341 struct flow_rule *rule = flow_cls_offload_flow_rule(f); in mlxsw_sp_flower_parse_meta() 409 const struct flow_rule *rule = flow_cls_offload_flow_rule(f); in mlxsw_sp_flower_parse_ports() 436 const struct flow_rule *rule = flow_cls_offload_flow_rule(f); in mlxsw_sp_flower_parse_ports_range() 498 const struct flow_rule *rule = flow_cls_offload_flow_rule(f); in mlxsw_sp_flower_parse_tcp() 529 const struct flow_rule *rule = flow_cls_offload_flow_rule(f); in mlxsw_sp_flower_parse_ip() 562 struct flow_rule *rule = flow_cls_offload_flow_rule(f); in mlxsw_sp_flower_parse()
|
/Linux-v6.6/drivers/net/ethernet/microchip/vcap/ |
D | vcap_tc.h | 11 struct flow_rule *frule;
|
/Linux-v6.6/drivers/net/ethernet/stmicro/stmmac/ |
D | stmmac_tc.c | 462 struct flow_rule *rule = flow_cls_offload_flow_rule(cls); in tc_add_basic_flow() 480 struct flow_rule *rule = flow_cls_offload_flow_rule(cls); in tc_add_ip4_flow() 515 struct flow_rule *rule = flow_cls_offload_flow_rule(cls); in tc_add_ports_flow() 591 struct flow_rule *rule = flow_cls_offload_flow_rule(cls); in tc_add_flow() 665 struct flow_rule *rule = flow_cls_offload_flow_rule(cls); in tc_add_vlan_flow() 736 struct flow_rule *rule = flow_cls_offload_flow_rule(cls); in tc_add_ethtype_flow()
|
/Linux-v6.6/drivers/net/ethernet/chelsio/cxgb4/ |
D | cxgb4_tc_flower.h | 140 int cxgb4_flow_rule_replace(struct net_device *dev, struct flow_rule *rule,
|