Home
last modified time | relevance | path

Searched refs:flow_table (Results 1 – 24 of 24) sorted by relevance

/linux/net/openvswitch/
H A Dflow_table.h62 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 …]
H A Dflow_table.c103 int ovs_flow_tbl_count(const struct flow_table *table) in ovs_flow_tbl_count()
243 static int tbl_mask_array_realloc(struct flow_table *tbl, int size) in tbl_mask_array_realloc()
270 static int tbl_mask_array_add_mask(struct flow_table *tbl, in tbl_mask_array_add_mask()
298 static void tbl_mask_array_del_mask(struct flow_table *tbl, in tbl_mask_array_del_mask()
331 static void flow_mask_remove(struct flow_table *tbl, struct sw_flow_mask *mask) in flow_mask_remove()
389 int ovs_flow_tbl_masks_cache_resize(struct flow_table *table, u32 size) in ovs_flow_tbl_masks_cache_resize()
411 int ovs_flow_tbl_init(struct flow_table *table) in ovs_flow_tbl_init()
459 static void table_instance_flow_free(struct flow_table *table, in table_instance_flow_free()
464 hlist_del_rcu(&flow->flow_table.node[ti->node_ver]); in table_instance_flow_free()
476 void table_instance_flow_flush(struct flow_table *table, in table_instance_flow_flush()
[all …]
H A DMakefile14 flow_table.o \
H A Ddatapath.h93 struct flow_table table;
H A Dflow.h226 } flow_table, ufid_table; member
H A Ddatapath.c45 #include "flow_table.h"
1957 struct flow_table *table = &dp->table; in __dp_destroy()
/linux/net/netfilter/
H A Dnf_flow_table_core.c335 int flow_offload_add(struct nf_flowtable *flow_table, struct flow_offload *flow) in flow_offload_add() argument
341 err = rhashtable_insert_fast(&flow_table->rhashtable, in flow_offload_add()
348 err = rhashtable_insert_fast(&flow_table->rhashtable, in flow_offload_add()
352 rhashtable_remove_fast(&flow_table->rhashtable, in flow_offload_add()
360 if (nf_flowtable_hw_offload(flow_table)) in flow_offload_add()
361 nf_flow_offload_add(flow_table, flow); in flow_offload_add()
367 void flow_offload_refresh(struct nf_flowtable *flow_table, in flow_offload_refresh() argument
378 if (likely(!nf_flowtable_hw_offload(flow_table)) || in flow_offload_refresh()
383 nf_flow_offload_refresh(flow_table, flow); in flow_offload_refresh()
387 static void flow_offload_del(struct nf_flowtable *flow_table, in flow_offload_del() argument
408 flow_offload_lookup(struct nf_flowtable * flow_table,struct flow_offload_tuple * tuple) flow_offload_lookup() argument
433 nf_flow_table_iterate(struct nf_flowtable * flow_table,void (* iter)(struct nf_flowtable * flowtable,struct flow_offload * flow,void * data),void * data) nf_flow_table_iterate() argument
467 nf_flow_custom_gc(struct nf_flowtable * flow_table,const struct flow_offload * flow) nf_flow_custom_gc() argument
575 nf_flow_offload_gc_step(struct nf_flowtable * flow_table,struct flow_offload * flow,void * data) nf_flow_offload_gc_step() argument
609 nf_flow_table_gc_run(struct nf_flowtable * flow_table) nf_flow_table_gc_run() argument
616 struct nf_flowtable *flow_table; nf_flow_offload_work_gc() local
735 nf_flow_table_do_cleanup(struct nf_flowtable * flow_table,struct flow_offload * flow,void * data) nf_flow_table_do_cleanup() argument
770 nf_flow_table_free(struct nf_flowtable * flow_table) nf_flow_table_free() argument
[all...]
H A Dnf_flow_table_ip.c458 struct nf_flowtable *flow_table, struct sk_buff *skb) in nf_flow_offload_lookup() argument
465 return flow_offload_lookup(flow_table, &tuple); in nf_flow_offload_lookup()
469 struct nf_flowtable *flow_table, in nf_flow_offload_forward() argument
501 flow_offload_refresh(flow_table, flow, false); in nf_flow_offload_forward()
512 if (flow_table->flags & NF_FLOWTABLE_COUNTER) in nf_flow_offload_forward()
868 struct nf_flowtable *flow_table = priv; in nf_flow_offload_ip_hook() local
880 tuplehash = nf_flow_offload_lookup(&ctx, flow_table, skb); in nf_flow_offload_ip_hook()
884 ret = nf_flow_offload_forward(&ctx, flow_table, tuplehash, skb); in nf_flow_offload_ip_hook()
1065 struct nf_flowtable *flow_table, in nf_flow_offload_ipv6_forward() argument
1097 flow_offload_refresh(flow_table, flow, false); in nf_flow_offload_ipv6_forward()
[all …]
/linux/include/net/netfilter/
H A Dnf_flow_table.h253 nf_flow_table_offload_add_cb(struct nf_flowtable *flow_table, in nf_flow_table_offload_add_cb() argument
256 struct flow_block *block = &flow_table->flow_block; in nf_flow_table_offload_add_cb()
260 down_write(&flow_table->flow_block_lock); in nf_flow_table_offload_add_cb()
274 up_write(&flow_table->flow_block_lock); in nf_flow_table_offload_add_cb()
276 if (flow_table->type->get) in nf_flow_table_offload_add_cb()
277 flow_table->type->get(flow_table); in nf_flow_table_offload_add_cb()
281 up_write(&flow_table->flow_block_lock); in nf_flow_table_offload_add_cb()
286 nf_flow_table_offload_del_cb(struct nf_flowtable *flow_table, in nf_flow_table_offload_del_cb() argument
289 struct flow_block *block = &flow_table in nf_flow_table_offload_del_cb()
[all...]
/linux/drivers/net/ethernet/mellanox/mlx5/core/lib/
H A Dmacsec_fs.c395 struct mlx5_flow_table *flow_table; in macsec_fs_tx_create() local
425 flow_table = mlx5_create_flow_table(ns, &ft_attr); in macsec_fs_tx_create()
426 if (IS_ERR(flow_table)) { in macsec_fs_tx_create()
427 err = PTR_ERR(flow_table); in macsec_fs_tx_create()
431 ft_crypto->t = flow_table; in macsec_fs_tx_create()
469 flow_table = macsec_fs_auto_group_table_create(ns, 0, TX_CHECK_TABLE_LEVEL, in macsec_fs_tx_create()
471 if (IS_ERR(flow_table)) { in macsec_fs_tx_create()
472 err = PTR_ERR(flow_table); in macsec_fs_tx_create()
476 tx_tables->ft_check = flow_table; in macsec_fs_tx_create()
480 MLX5_SET(create_flow_group_in, flow_group_in, start_flow_index, flow_table->max_fte - 1); in macsec_fs_tx_create()
[all …]
/linux/drivers/net/ethernet/mediatek/
H A Dmtk_ppe_offload.c292 if (rhashtable_lookup(&eth->flow_table, &f->cookie, mtk_flow_ht_params)) in mtk_flow_offload_replace()
513 err = rhashtable_insert_fast(&eth->flow_table, &entry->node, in mtk_flow_offload_replace()
534 entry = rhashtable_lookup(&eth->flow_table, &f->cookie, in mtk_flow_offload_destroy()
540 rhashtable_remove_fast(&eth->flow_table, &entry->node, in mtk_flow_offload_destroy()
556 entry = rhashtable_lookup(&eth->flow_table, &f->cookie, in mtk_flow_offload_stats()
685 return rhashtable_init(&eth->flow_table, &mtk_flow_ht_params); in mtk_eth_offload_init()
H A Dmtk_eth_soc.h1348 struct rhashtable flow_table; member
/linux/drivers/net/ethernet/netronome/nfp/flower/
H A Dmetadata.c111 return rhashtable_lookup_fast(&priv->flow_table, &flower_cmp_arg, in nfp_flower_search_fl_table()
519 err = rhashtable_init(&priv->flow_table, &nfp_flower_table_params); in nfp_flower_metadata_init()
602 rhashtable_destroy(&priv->flow_table); in nfp_flower_metadata_init()
707 rhashtable_free_and_destroy(&priv->flow_table, in nfp_flower_metadata_cleanup()
H A Doffload.c1065 err = rhashtable_insert_fast(&priv->flow_table, &merge_flow->fl_node, in nfp_flower_merge_offloaded_flows()
1098 WARN_ON_ONCE(rhashtable_remove_fast(&priv->flow_table, in nfp_flower_merge_offloaded_flows()
1392 err = rhashtable_insert_fast(&priv->flow_table, &flow_pay->fl_node, in nfp_flower_add_offload()
1437 WARN_ON_ONCE(rhashtable_remove_fast(&priv->flow_table, in nfp_flower_add_offload()
1520 WARN_ON_ONCE(rhashtable_remove_fast(&priv->flow_table, in nfp_flower_remove_merge_flow()
1622 WARN_ON_ONCE(rhashtable_remove_fast(&priv->flow_table, in nfp_flower_del_offload()
H A Dconntrack.c1092 err = rhashtable_insert_fast(&priv->flow_table, &flow_pay->fl_node, in nfp_fl_ct_add_offload()
1111 WARN_ON_ONCE(rhashtable_remove_fast(&priv->flow_table, in nfp_fl_ct_add_offload()
1168 WARN_ON_ONCE(rhashtable_remove_fast(&priv->flow_table, in nfp_fl_ct_del_offload()
1838 zt->nft = ct_act->ct.flow_table; in nfp_fl_ct_handle_pre_ct()
H A Dmain.h313 struct rhashtable flow_table; member
/linux/drivers/net/ethernet/broadcom/bnxt/
H A Dbnxt_tc.c1489 rc = rhashtable_remove_fast(&tc_info->flow_table, &flow_node->node, in __bnxt_tc_del_flow()
1560 old_node = rhashtable_lookup_fast(&tc_info->flow_table, in bnxt_tc_add_flow()
1588 rc = rhashtable_insert_fast(&tc_info->flow_table, &new_node->node, in bnxt_tc_add_flow()
1618 flow_node = rhashtable_lookup_fast(&tc_info->flow_table, in bnxt_tc_del_flow()
1636 flow_node = rhashtable_lookup_fast(&tc_info->flow_table, in bnxt_tc_get_flow_stats()
1828 num_flows = atomic_read(&tc_info->flow_table.nelems); in bnxt_tc_flow_stats_work()
1832 rhashtable_walk_enter(&tc_info->flow_table, &tc_info->iter); in bnxt_tc_flow_stats_work()
2031 rc = rhashtable_init(&tc_info->flow_table, &tc_info->flow_ht_params); in bnxt_init_tc()
2079 rhashtable_destroy(&tc_info->flow_table); in bnxt_init_tc()
2095 rhashtable_destroy(&tc_info->flow_table); in bnxt_shutdown_tc()
H A Dbnxt.h1839 struct rhashtable flow_table; member
/linux/drivers/net/ethernet/airoha/
H A Dairoha_ppe.c1101 if (rhashtable_lookup(&eth->flow_table, &f->cookie, in airoha_ppe_flow_offload_replace()
1273 err = rhashtable_insert_fast(&eth->flow_table, &e->node, in airoha_ppe_flow_offload_replace()
1293 e = rhashtable_lookup(&eth->flow_table, &f->cookie, in airoha_ppe_flow_offload_destroy()
1299 rhashtable_remove_fast(&eth->flow_table, &e->node, in airoha_ppe_flow_offload_destroy()
1347 e = rhashtable_lookup(&eth->flow_table, &f->cookie, in airoha_ppe_flow_offload_stats()
1645 err = rhashtable_init(&eth->flow_table, &airoha_flow_table_params); in airoha_ppe_init()
1662 rhashtable_destroy(&eth->flow_table); in airoha_ppe_init()
1684 rhashtable_destroy(&eth->flow_table); in airoha_ppe_deinit()
H A Dairoha_eth.h658 struct rhashtable flow_table;
656 struct rhashtable flow_table; global() member
/linux/net/core/
H A Ddev.c5131 struct rps_dev_flow *flow_table; in set_rps_cpu()
5154 flow_table = rps_tag_to_table(q_tag_ptr); in set_rps_cpu()
5155 tmp_rflow = flow_table + flow_id; in set_rps_cpu()
5233 struct rps_dev_flow *flow_table; in get_rps_cpu()
5254 flow_table = rps_tag_to_table(q_tag_ptr); in get_rps_cpu()
5255 rflow = flow_table + flow_id; in get_rps_cpu()
5315 struct rps_dev_flow *flow_table; in rps_trigger_softirq()
5327 flow_table = rps_tag_to_table(q_tag_ptr); in trigger_rx_softirq()
5328 rflow = flow_table + flow_id; in trigger_rx_softirq()
5099 struct rps_dev_flow *flow_table; set_rps_cpu() local
5201 struct rps_dev_flow *flow_table; get_rps_cpu() local
5283 struct rps_dev_flow *flow_table; rps_may_expire_flow() local
/linux/net/sched/
H A Dact_ct.c700 /* If flow_table flow has already been updated to the in tcf_ct_flow_table_lookup()
1667 entry->ct.flow_table = tcf_ct_ft(act); in tcf_ct_offload_act_setup()
/linux/drivers/net/ethernet/mellanox/mlx5/core/en/
H A Dtc_ct.c1603 attr->ct_attr.nf_ft = act->ct.flow_table; in mlx5_tc_ct_parse_action()
/linux/drivers/net/ethernet/sfc/
H A Dtc.c1051 fa->ct.flow_table); in efx_tc_flower_handle_lhs_actions()