/openbmc/linux/net/netfilter/ |
H A D | nf_flow_table_offload.c | 743 flow_rule = kzalloc(sizeof(*flow_rule), GFP_KERNEL); in nf_flow_offload_rule_alloc() 744 if (!flow_rule) in nf_flow_offload_rule_alloc() 748 if (!flow_rule->rule) in nf_flow_offload_rule_alloc() 751 flow_rule->rule->match.dissector = &flow_rule->match.dissector; in nf_flow_offload_rule_alloc() 752 flow_rule->rule->match.mask = &flow_rule->match.mask; in nf_flow_offload_rule_alloc() 753 flow_rule->rule->match.key = &flow_rule->match.key; in nf_flow_offload_rule_alloc() 768 return flow_rule; in nf_flow_offload_rule_alloc() 773 kfree(flow_rule); in nf_flow_offload_rule_alloc() 791 kfree(flow_rule); in __nf_flow_offload_destroy() 809 if (!flow_rule[0]) in nf_flow_offload_alloc() [all …]
|
H A D | nf_flow_table_inet.c | 48 struct nf_flow_rule *flow_rule) in nf_flow_rule_route_inet() argument 55 err = nf_flow_rule_route_ipv4(net, flow, dir, flow_rule); in nf_flow_rule_route_inet() 58 err = nf_flow_rule_route_ipv6(net, flow, dir, flow_rule); in nf_flow_rule_route_inet()
|
/openbmc/linux/include/net/ |
H A 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, 105 void flow_rule_match_vlan(const struct flow_rule *rule, 109 void flow_rule_match_arp(const struct flow_rule *rule, 115 void flow_rule_match_ip(const struct flow_rule *rule, 121 void flow_rule_match_tcp(const struct flow_rule *rule, 143 void flow_rule_match_ct(const struct flow_rule *rule, 439 struct flow_rule { struct 606 struct flow_rule *rule; [all …]
|
/openbmc/linux/net/core/ |
H A 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() 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() 121 void flow_rule_match_ip(const struct flow_rule *rule, in flow_rule_match_ip() 142 void flow_rule_match_tcp(const struct flow_rule *rule, in flow_rule_match_tcp() 156 void flow_rule_match_icmp(const struct flow_rule *rule, in flow_rule_match_icmp() [all …]
|
/openbmc/linux/drivers/net/ethernet/netronome/nfp/flower/ |
H A D | main.h | 561 struct flow_rule *rule); 575 struct flow_rule *rule, 580 struct flow_rule *rule); 584 struct flow_rule *rule); 596 struct flow_rule *rule); 600 struct flow_rule *rule); 604 struct flow_rule *rule); 608 struct flow_rule *rule); 610 struct flow_rule *rule, 617 struct flow_rule *rule, [all …]
|
H A D | match.c | 25 struct flow_rule *rule) in nfp_flower_compile_tci() 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() 320 struct flow_rule *rule) in nfp_flower_compile_vlan() 403 struct flow_rule *rule) in nfp_flower_compile_tun_ipv4_addrs() 419 struct flow_rule *rule) in nfp_flower_compile_tun_ipv6_addrs() 489 struct flow_rule *rule) in nfp_flower_compile_ipv4_gre_tun() 504 struct flow_rule *rule) in nfp_flower_compile_ipv4_udp_tun() 514 struct flow_rule *rule) in nfp_flower_compile_ipv6_udp_tun() [all …]
|
H A 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() 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() 1885 struct flow_rule *rule = flow_cls_offload_flow_rule(flow); in nfp_fl_ct_handle_post_ct() 2149 struct flow_rule *flow_rule = flow->rule; in nfp_fl_ct_offload_nft_supported() local [all …]
|
/openbmc/linux/drivers/net/ethernet/mellanox/mlx5/core/en/tc/ |
H A 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 …]
|
H A D | ct_fs.h | 26 struct flow_rule *flow_rule);
|
H A 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
|
H A 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()
|
/openbmc/linux/drivers/net/ethernet/mellanox/mlx5/core/en/ |
H A D | tc_ct.c | 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 668 struct flow_rule *flow_rule, in mlx5_tc_ct_entry_create_nat() argument 706 struct flow_rule *flow_rule, in mlx5_tc_ct_entry_create_mod_hdr() argument 791 struct flow_rule *flow_rule, in mlx5_tc_ct_entry_add_rule() argument 868 struct flow_rule *flow_rule, in mlx5_tc_ct_entry_replace_rule() argument 1088 struct flow_rule *flow_rule, in mlx5_tc_ct_entry_add_rules() argument 1126 struct flow_rule *flow_rule, in mlx5_tc_ct_entry_replace_rules() argument 1174 struct flow_rule *flow_rule = flow_cls_offload_flow_rule(flow); in mlx5_tc_ct_block_flow_offload_add() local [all …]
|
H A 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()
|
H A 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()
|
/openbmc/linux/drivers/net/ethernet/mellanox/mlx5/core/ |
H A 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()
|
H A D | en_rep.c | 423 if (IS_ERR(flow_rule)) { in mlx5e_sqs2vport_add_peers_rules() 425 return PTR_ERR(flow_rule); in mlx5e_sqs2vport_add_peers_rules() 428 sq_peer->rule = flow_rule; in mlx5e_sqs2vport_add_peers_rules() 471 if (IS_ERR(flow_rule)) { in mlx5e_sqs2vport_start() 472 err = PTR_ERR(flow_rule); in mlx5e_sqs2vport_start() 586 if (IS_ERR(flow_rule)) in mlx5e_rep_add_meta_tunnel_rule() 587 return PTR_ERR(flow_rule); in mlx5e_rep_add_meta_tunnel_rule() 984 if (IS_ERR(flow_rule)) in mlx5e_create_rep_vport_rx_rule() 985 return PTR_ERR(flow_rule); in mlx5e_create_rep_vport_rx_rule() 1630 if (IS_ERR(flow_rule)) { in mlx5e_vport_rep_event_pair() [all …]
|
H A D | eswitch_offloads.c | 1009 if (IS_ERR(flow_rule)) in mlx5_eswitch_add_send_to_vport_rule() 1011 PTR_ERR(flow_rule)); in mlx5_eswitch_add_send_to_vport_rule() 1014 return flow_rule; in mlx5_eswitch_add_send_to_vport_rule() 1058 if (IS_ERR(flow_rule)) in mlx5_eswitch_add_send_to_vport_meta_rule() 1063 return flow_rule; in mlx5_eswitch_add_send_to_vport_meta_rule() 1375 if (IS_ERR(flow_rule)) { in esw_add_fdb_miss_rule() 1390 if (IS_ERR(flow_rule)) { in esw_add_fdb_miss_rule() 1443 if (IS_ERR(flow_rule)) in esw_add_restore_rule() 1448 return flow_rule; in esw_add_restore_rule() 2154 return flow_rule; in mlx5_eswitch_create_vport_rx_rule() [all …]
|
H A D | eswitch.c | 64 struct mlx5_flow_handle *flow_rule; member 255 flow_rule = in __esw_fdb_set_vport_rule() 258 if (IS_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() 359 if (vaddr->flow_rule) in esw_del_uc_addr() 361 vaddr->flow_rule = NULL; in esw_del_uc_addr() 399 iter_vaddr->flow_rule = in update_allmulti_vports() 450 vport, mac, vaddr->flow_rule, in esw_add_mc_addr() 477 if (vaddr->flow_rule) in esw_del_mc_addr() [all …]
|
/openbmc/linux/drivers/net/ethernet/mellanox/mlx5/core/esw/ |
H A 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()
|
/openbmc/linux/include/net/netfilter/ |
H A D | nf_flow_table.h | 49 struct flow_rule *rule; 63 struct nf_flow_rule *flow_rule); 330 struct nf_flow_rule *flow_rule); 333 struct nf_flow_rule *flow_rule);
|
/openbmc/linux/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/ |
H A D | ingress_ofld.c | 128 struct mlx5_flow_handle *flow_rule; in esw_acl_ingress_src_port_drop_create() local 141 flow_rule = mlx5_add_flow_rules(vport->ingress.acl, NULL, &flow_act, NULL, 0); in esw_acl_ingress_src_port_drop_create() 142 if (IS_ERR(flow_rule)) { in esw_acl_ingress_src_port_drop_create() 143 err = PTR_ERR(flow_rule); in esw_acl_ingress_src_port_drop_create() 147 vport->ingress.offloads.drop_rule = flow_rule; in esw_acl_ingress_src_port_drop_create()
|
/openbmc/linux/drivers/net/ethernet/microchip/vcap/ |
H A D | vcap_tc.h | 11 struct flow_rule *frule;
|
/openbmc/linux/drivers/net/ethernet/mellanox/mlxsw/ |
H A 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()
|
/openbmc/linux/drivers/net/ethernet/stmicro/stmmac/ |
H A D | stmmac_tc.c | 463 struct flow_rule *rule = flow_cls_offload_flow_rule(cls); in tc_add_basic_flow() 481 struct flow_rule *rule = flow_cls_offload_flow_rule(cls); in tc_add_ip4_flow() 516 struct flow_rule *rule = flow_cls_offload_flow_rule(cls); in tc_add_ports_flow() 592 struct flow_rule *rule = flow_cls_offload_flow_rule(cls); in tc_add_flow() 666 struct flow_rule *rule = flow_cls_offload_flow_rule(cls); in tc_add_vlan_flow() 737 struct flow_rule *rule = flow_cls_offload_flow_rule(cls); in tc_add_ethtype_flow()
|
/openbmc/linux/drivers/net/ethernet/chelsio/cxgb4/ |
H A D | cxgb4_tc_flower.h | 140 int cxgb4_flow_rule_replace(struct net_device *dev, struct flow_rule *rule,
|