/linux/net/openvswitch/ |
H A 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 …]
|
H A D | flow_table.c | 103 int ovs_flow_tbl_count(const struct flow_table *table) in ovs_flow_tbl_count() 245 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 D | Makefile | 14 flow_table.o \
|
H A D | datapath.h | 89 struct flow_table table;
|
H A D | flow.h | 226 } flow_table, ufid_table; member
|
H A D | datapath.c | 1892 struct flow_table *table = &dp->table; in __dp_destroy()
|
/linux/net/netfilter/ |
H A D | nf_flow_table_ip.c | 356 struct nf_flowtable *flow_table, struct sk_buff *skb) in nf_flow_offload_lookup() argument 367 return flow_offload_lookup(flow_table, &tuple); in nf_flow_offload_lookup() 371 struct nf_flowtable *flow_table, in nf_flow_offload_forward() argument 400 flow_offload_refresh(flow_table, flow, false); in nf_flow_offload_forward() 411 if (flow_table->flags & NF_FLOWTABLE_COUNTER) in nf_flow_offload_forward() 422 struct nf_flowtable *flow_table = priv; in nf_flow_offload_ip_hook() local 433 tuplehash = nf_flow_offload_lookup(&ctx, flow_table, skb); in nf_flow_offload_ip_hook() 437 ret = nf_flow_offload_forward(&ctx, flow_table, tuplehash, skb); in nf_flow_offload_ip_hook() 650 struct nf_flowtable *flow_table, in nf_flow_offload_ipv6_forward() argument 679 flow_offload_refresh(flow_table, flow, false); in nf_flow_offload_ipv6_forward() [all …]
|
/linux/drivers/net/ethernet/mediatek/ |
H A D | mtk_ppe_offload.c | 260 if (rhashtable_lookup(ð->flow_table, &f->cookie, mtk_flow_ht_params)) in mtk_flow_offload_replace() 483 err = rhashtable_insert_fast(ð->flow_table, &entry->node, in mtk_flow_offload_replace() 504 entry = rhashtable_lookup(ð->flow_table, &f->cookie, in mtk_flow_offload_destroy() 510 rhashtable_remove_fast(ð->flow_table, &entry->node, in mtk_flow_offload_destroy() 526 entry = rhashtable_lookup(ð->flow_table, &f->cookie, in mtk_flow_offload_stats() 655 return rhashtable_init(ð->flow_table, &mtk_flow_ht_params); in mtk_eth_offload_init()
|
H A D | mtk_eth_soc.h | 1285 struct rhashtable flow_table; member
|
/linux/drivers/net/ethernet/netronome/nfp/flower/ |
H A D | metadata.c | 111 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() 603 rhashtable_destroy(&priv->flow_table); in nfp_flower_metadata_init() 708 rhashtable_free_and_destroy(&priv->flow_table, in nfp_flower_metadata_cleanup()
|
H A D | offload.c | 1065 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 D | conntrack.c | 1092 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 D | main.h | 313 struct rhashtable flow_table; member
|
/linux/drivers/net/ethernet/broadcom/bnxt/ |
H A D | bnxt_tc.c | 1489 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 D | bnxt.h | 1800 struct rhashtable flow_table; member
|
/linux/net/core/ |
H A D | dev.c | 4781 struct rps_dev_flow_table *flow_table; in set_rps_cpu() local 4796 flow_table = rcu_dereference(rxqueue->rps_flow_table); in set_rps_cpu() 4797 if (!flow_table) in set_rps_cpu() 4799 flow_id = skb_get_hash(skb) & flow_table->mask; in set_rps_cpu() 4805 rflow = &flow_table->flows[flow_id]; in set_rps_cpu() 4829 struct rps_dev_flow_table *flow_table; in get_rps_cpu() local 4850 flow_table = rcu_dereference(rxqueue->rps_flow_table); in get_rps_cpu() 4852 if (!flow_table && !map) in get_rps_cpu() 4861 if (flow_table && sock_flow_table) { in get_rps_cpu() 4878 rflow = &flow_table->flows[hash & flow_table->mask]; in get_rps_cpu() [all …]
|
/linux/net/sched/ |
H A D | act_ct.c | 1613 entry->ct.flow_table = tcf_ct_ft(act); in tcf_ct_offload_act_setup()
|
/linux/drivers/net/ethernet/sfc/ |
H A D | tc.c | 1051 fa->ct.flow_table); in efx_tc_flower_handle_lhs_actions()
|