/Linux-v5.10/net/openvswitch/ |
D | flow_table.h | 62 struct flow_table { struct 80 int ovs_flow_tbl_init(struct flow_table *); argument 81 int ovs_flow_tbl_count(const struct flow_table *table); 82 void ovs_flow_tbl_destroy(struct flow_table *table); 83 int ovs_flow_tbl_flush(struct flow_table *flow_table); 85 int ovs_flow_tbl_insert(struct flow_table *table, struct sw_flow *flow, 87 void ovs_flow_tbl_remove(struct flow_table *table, struct sw_flow *flow); 88 int ovs_flow_tbl_num_masks(const struct flow_table *table); 89 u32 ovs_flow_tbl_masks_cache_size(const struct flow_table *table); 90 int ovs_flow_tbl_masks_cache_resize(struct flow_table *table, u32 size); [all …]
|
D | flow_table.c | 102 int ovs_flow_tbl_count(const struct flow_table *table) in ovs_flow_tbl_count() 247 static int tbl_mask_array_realloc(struct flow_table *tbl, int size) in tbl_mask_array_realloc() 272 static int tbl_mask_array_add_mask(struct flow_table *tbl, in tbl_mask_array_add_mask() 300 static void tbl_mask_array_del_mask(struct flow_table *tbl, in tbl_mask_array_del_mask() 333 static void flow_mask_remove(struct flow_table *tbl, struct sw_flow_mask *mask) in flow_mask_remove() 391 int ovs_flow_tbl_masks_cache_resize(struct flow_table *table, u32 size) in ovs_flow_tbl_masks_cache_resize() 413 int ovs_flow_tbl_init(struct flow_table *table) in ovs_flow_tbl_init() 461 static void table_instance_flow_free(struct flow_table *table, in table_instance_flow_free() 466 hlist_del_rcu(&flow->flow_table.node[ti->node_ver]); in table_instance_flow_free() 478 void table_instance_flow_flush(struct flow_table *table, in table_instance_flow_flush() [all …]
|
D | Makefile | 14 flow_table.o \
|
D | datapath.h | 73 struct flow_table table;
|
D | flow.h | 212 } flow_table, ufid_table; member
|
D | datapath.c | 1763 struct flow_table *table = &dp->table; in __dp_destroy()
|
/Linux-v5.10/net/netfilter/ |
D | nf_flow_table_core.c | 224 int flow_offload_add(struct nf_flowtable *flow_table, struct flow_offload *flow) in flow_offload_add() argument 230 err = rhashtable_insert_fast(&flow_table->rhashtable, in flow_offload_add() 236 err = rhashtable_insert_fast(&flow_table->rhashtable, in flow_offload_add() 240 rhashtable_remove_fast(&flow_table->rhashtable, in flow_offload_add() 248 if (nf_flowtable_hw_offload(flow_table)) { in flow_offload_add() 250 nf_flow_offload_add(flow_table, flow); in flow_offload_add() 257 void flow_offload_refresh(struct nf_flowtable *flow_table, in flow_offload_refresh() argument 262 if (likely(!nf_flowtable_hw_offload(flow_table) || in flow_offload_refresh() 266 nf_flow_offload_add(flow_table, flow); in flow_offload_refresh() 275 static void flow_offload_del(struct nf_flowtable *flow_table, in flow_offload_del() argument [all …]
|
D | nf_flow_table_ip.c | 246 struct nf_flowtable *flow_table = priv; in nf_flow_offload_ip_hook() local 262 tuplehash = flow_offload_lookup(flow_table, &tuple); in nf_flow_offload_ip_hook() 281 flow_offload_refresh(flow_table, flow); in nf_flow_offload_ip_hook() 295 if (flow_table->flags & NF_FLOWTABLE_COUNTER) in nf_flow_offload_ip_hook() 488 struct nf_flowtable *flow_table = priv; in nf_flow_offload_ipv6_hook() local 503 tuplehash = flow_offload_lookup(flow_table, &tuple); in nf_flow_offload_ipv6_hook() 519 flow_offload_refresh(flow_table, flow); in nf_flow_offload_ipv6_hook() 536 if (flow_table->flags & NF_FLOWTABLE_COUNTER) in nf_flow_offload_ipv6_hook()
|
/Linux-v5.10/include/net/netfilter/ |
D | nf_flow_table.h | 165 nf_flow_table_offload_add_cb(struct nf_flowtable *flow_table, in nf_flow_table_offload_add_cb() argument 168 struct flow_block *block = &flow_table->flow_block; in nf_flow_table_offload_add_cb() 172 down_write(&flow_table->flow_block_lock); in nf_flow_table_offload_add_cb() 188 up_write(&flow_table->flow_block_lock); in nf_flow_table_offload_add_cb() 193 nf_flow_table_offload_del_cb(struct nf_flowtable *flow_table, in nf_flow_table_offload_del_cb() argument 196 struct flow_block *block = &flow_table->flow_block; in nf_flow_table_offload_del_cb() 199 down_write(&flow_table->flow_block_lock); in nf_flow_table_offload_del_cb() 207 up_write(&flow_table->flow_block_lock); in nf_flow_table_offload_del_cb() 213 int flow_offload_add(struct nf_flowtable *flow_table, struct flow_offload *flow); 214 void flow_offload_refresh(struct nf_flowtable *flow_table, [all …]
|
/Linux-v5.10/drivers/net/ethernet/netronome/nfp/flower/ |
D | metadata.c | 108 return rhashtable_lookup_fast(&priv->flow_table, &flower_cmp_arg, in nfp_flower_search_fl_table() 491 err = rhashtable_init(&priv->flow_table, &nfp_flower_table_params); in nfp_flower_metadata_init() 546 rhashtable_destroy(&priv->flow_table); in nfp_flower_metadata_init() 557 rhashtable_free_and_destroy(&priv->flow_table, in nfp_flower_metadata_cleanup()
|
D | offload.c | 1058 err = rhashtable_insert_fast(&priv->flow_table, &merge_flow->fl_node, in nfp_flower_merge_offloaded_flows() 1074 WARN_ON_ONCE(rhashtable_remove_fast(&priv->flow_table, in nfp_flower_merge_offloaded_flows() 1294 err = rhashtable_insert_fast(&priv->flow_table, &flow_pay->fl_node, in nfp_flower_add_offload() 1320 WARN_ON_ONCE(rhashtable_remove_fast(&priv->flow_table, in nfp_flower_add_offload() 1387 WARN_ON_ONCE(rhashtable_remove_fast(&priv->flow_table, in nfp_flower_remove_merge_flow() 1466 WARN_ON_ONCE(rhashtable_remove_fast(&priv->flow_table, in nfp_flower_del_offload()
|
D | main.h | 205 struct rhashtable flow_table; member
|
/Linux-v5.10/net/core/ |
D | net-sysfs.c | 810 struct rps_dev_flow_table *flow_table; in show_rps_dev_flow_table_cnt() local 814 flow_table = rcu_dereference(queue->rps_flow_table); in show_rps_dev_flow_table_cnt() 815 if (flow_table) in show_rps_dev_flow_table_cnt() 816 val = (unsigned long)flow_table->mask + 1; in show_rps_dev_flow_table_cnt() 910 struct rps_dev_flow_table *flow_table; in rx_queue_release() local 918 flow_table = rcu_dereference_protected(queue->rps_flow_table, 1); in rx_queue_release() 919 if (flow_table) { in rx_queue_release() 921 call_rcu(&flow_table->rcu, rps_dev_flow_table_release); in rx_queue_release()
|
D | dev.c | 4268 struct rps_dev_flow_table *flow_table; in set_rps_cpu() local 4283 flow_table = rcu_dereference(rxqueue->rps_flow_table); in set_rps_cpu() 4284 if (!flow_table) in set_rps_cpu() 4286 flow_id = skb_get_hash(skb) & flow_table->mask; in set_rps_cpu() 4292 rflow = &flow_table->flows[flow_id]; in set_rps_cpu() 4316 struct rps_dev_flow_table *flow_table; in get_rps_cpu() local 4337 flow_table = rcu_dereference(rxqueue->rps_flow_table); in get_rps_cpu() 4339 if (!flow_table && !map) in get_rps_cpu() 4348 if (flow_table && sock_flow_table) { in get_rps_cpu() 4363 rflow = &flow_table->flows[hash & flow_table->mask]; in get_rps_cpu() [all …]
|
/Linux-v5.10/drivers/net/ethernet/broadcom/bnxt/ |
D | bnxt_tc.c | 1477 rc = rhashtable_remove_fast(&tc_info->flow_table, &flow_node->node, in __bnxt_tc_del_flow() 1548 old_node = rhashtable_lookup_fast(&tc_info->flow_table, in bnxt_tc_add_flow() 1576 rc = rhashtable_insert_fast(&tc_info->flow_table, &new_node->node, in bnxt_tc_add_flow() 1606 flow_node = rhashtable_lookup_fast(&tc_info->flow_table, in bnxt_tc_del_flow() 1624 flow_node = rhashtable_lookup_fast(&tc_info->flow_table, in bnxt_tc_get_flow_stats() 1810 num_flows = atomic_read(&tc_info->flow_table.nelems); in bnxt_tc_flow_stats_work() 1814 rhashtable_walk_enter(&tc_info->flow_table, &tc_info->iter); in bnxt_tc_flow_stats_work() 2016 rc = rhashtable_init(&tc_info->flow_table, &tc_info->flow_ht_params); in bnxt_init_tc() 2064 rhashtable_destroy(&tc_info->flow_table); in bnxt_init_tc() 2079 rhashtable_destroy(&tc_info->flow_table); in bnxt_shutdown_tc()
|
D | bnxt.h | 1370 struct rhashtable flow_table; member
|
/Linux-v5.10/drivers/infiniband/hw/mlx5/ |
D | fs.c | 690 mlx5_destroy_flow_table(prio->flow_table); in put_flow_table() 691 prio->flow_table = NULL; in put_flow_table() 756 prio->flow_table = ft; in _get_prio() 842 ft = prio->flow_table; in get_flow_table() 909 struct mlx5_flow_table *ft = ft_prio->flow_table; in _create_flow_rule() 1026 ft_prio->flow_table = ft; in _create_flow_rule() 1378 if (prio->flow_table) in _get_flow_table() 1397 struct mlx5_flow_table *ft = ft_prio->flow_table; in _create_raw_flow_rule() 1426 ft_prio->flow_table = ft; in _create_raw_flow_rule()
|
D | mlx5_ib.h | 168 struct mlx5_flow_table *flow_table; member
|
/Linux-v5.10/include/net/ |
D | flow_offload.h | 242 struct nf_flowtable *flow_table; member
|
/Linux-v5.10/drivers/net/ethernet/mellanox/mlx5/core/en/ |
D | tc_ct.c | 1154 attr->ct_attr.nf_ft = act->ct.flow_table; in mlx5_tc_ct_parse_action()
|
/Linux-v5.10/net/sched/ |
D | cls_api.c | 3674 entry->ct.flow_table = tcf_ct_ft(act); in tc_setup_flow_action()
|