Home
last modified time | relevance | path

Searched refs:flowtable (Results 1 – 10 of 10) sorted by relevance

/linux-6.15/Documentation/networking/
H A Dnf_flowtable.rst4 Netfilter's flowtable infrastructure
17 flowtable through your ruleset. The flowtable infrastructure provides a rule
20 A packet that finds a matching entry in the flowtable (ie. flowtable hit) is
24 there is no matching entry in the flowtable (ie. flowtable miss), the packet
70 Fig.1 Netfilter hooks and flowtable interactions
85 flowtable and add one rule to your forward chain::
88 flowtable f {
127 flowtable datapath also deals with layer 2 decapsulation.
175 flowtable f {
192 flowtable f {
[all …]
/linux-6.15/net/netfilter/
H A Dnf_flow_table_offload.c23 struct nf_flowtable *flowtable; member
736 const struct nf_flowtable *flowtable = offload->flowtable; in nf_flow_offload_rule_alloc() local
863 up_read(&flowtable->flow_block_lock); in nf_flow_offload_tuple()
877 offload->flowtable->priority, in flow_offload_tuple_add()
886 offload->flowtable->priority, in flow_offload_tuple_del()
940 offload->flowtable->priority, in flow_offload_tuple_stats()
1032 offload->flowtable = flowtable; in nf_flow_offload_work_alloc()
1085 nf_flow_table_gc_run(flowtable); in nf_flow_table_offload_flush_cleanup()
1120 up_write(&flowtable->flow_block_lock); in nf_flow_table_block_setup()
1133 bo->block = &flowtable->flow_block; in nf_flow_table_block_offload_init()
[all …]
H A Dnft_flow_offload.c20 struct nft_flowtable *flowtable; member
166 if (nf_flowtable_hw_offload(flowtable) && in nft_dev_path_info()
306 struct nf_flowtable *flowtable = &priv->flowtable->data; in nft_flow_offload_eval() local
372 ret = flow_offload_add(flowtable, flow); in nft_flow_offload_eval()
413 struct nft_flowtable *flowtable; in nft_flow_offload_init() local
418 flowtable = nft_flowtable_lookup(ctx->net, ctx->table, in nft_flow_offload_init()
420 if (IS_ERR(flowtable)) in nft_flow_offload_init()
421 return PTR_ERR(flowtable); in nft_flow_offload_init()
423 if (!nft_use_inc(&flowtable->use)) in nft_flow_offload_init()
426 priv->flowtable = flowtable; in nft_flow_offload_init()
[all …]
H A Dnf_flow_table_core.c418 void (*iter)(struct nf_flowtable *flowtable, in nf_flow_table_iterate() argument
693 flow_block_init(&flowtable->flow_block); in nf_flow_table_init()
694 init_rwsem(&flowtable->flow_block_lock); in nf_flow_table_init()
696 err = rhashtable_init(&flowtable->rhashtable, in nf_flow_table_init()
702 &flowtable->gc_work, HZ); in nf_flow_table_init()
705 list_add(&flowtable->list, &flowtables); in nf_flow_table_init()
732 flush_delayed_work(&flowtable->gc_work); in nf_flow_table_gc_cleanup()
733 nf_flow_table_offload_flush(flowtable); in nf_flow_table_gc_cleanup()
738 struct nf_flowtable *flowtable; in nf_flow_table_cleanup() local
741 list_for_each_entry(flowtable, &flowtables, list) in nf_flow_table_cleanup()
[all …]
H A Dnf_flow_table_xdp.c133 int nf_flow_offload_xdp_setup(struct nf_flowtable *flowtable, in nf_flow_offload_xdp_setup() argument
139 return nf_flowtable_by_dev_insert(flowtable, dev); in nf_flow_offload_xdp_setup()
141 nf_flowtable_by_dev_remove(flowtable, dev); in nf_flow_offload_xdp_setup()
H A Dnf_tables_api.c8706 return flowtable; in nft_flowtable_lookup()
8867 flowtable->data.type->setup(&flowtable->data, hook->ops.dev, in nft_unregister_flowtable_hook()
8880 flowtable->data.type->setup(&flowtable->data, hook->ops.dev, in __nft_unregister_flowtable_net_hooks()
8916 err = flowtable->data.type->setup(&flowtable->data, in nft_register_flowtable_net_hooks()
8924 flowtable->data.type->setup(&flowtable->data, in nft_register_flowtable_net_hooks()
9084 flowtable = kzalloc(sizeof(*flowtable), GFP_KERNEL_ACCOUNT); in nf_tables_newflowtable()
9085 if (!flowtable) { in nf_tables_newflowtable()
9152 flowtable->data.type->free(&flowtable->data); in nf_tables_newflowtable()
9158 kfree(flowtable); in nf_tables_newflowtable()
9531 flowtable->data.type->free(&flowtable->data); in nf_tables_flowtable_destroy()
[all …]
/linux-6.15/include/net/netfilter/
H A Dnf_flow_table.h89 static inline bool nf_flowtable_hw_offload(struct nf_flowtable *flowtable) in nf_flowtable_hw_offload() argument
91 return flowtable->flags & NF_FLOWTABLE_HW_OFFLOAD; in nf_flowtable_hw_offload()
289 void nf_flow_table_gc_cleanup(struct nf_flowtable *flowtable,
310 int nf_flow_offload_xdp_setup(struct nf_flowtable *flowtable,
332 void nf_flow_offload_add(struct nf_flowtable *flowtable,
334 void nf_flow_offload_del(struct nf_flowtable *flowtable,
336 void nf_flow_offload_stats(struct nf_flowtable *flowtable,
339 void nf_flow_table_offload_flush(struct nf_flowtable *flowtable);
340 void nf_flow_table_offload_flush_cleanup(struct nf_flowtable *flowtable);
342 int nf_flow_table_offload_setup(struct nf_flowtable *flowtable,
H A Dnf_tables.h1481 struct nft_flowtable *flowtable,
1811 struct nft_flowtable *flowtable; member
1820 nft_trans_container_flowtable(trans)->flowtable
/linux-6.15/Documentation/netlink/specs/
H A Dnftables.yaml726 name: flowtable-attrs
737 nested-attributes: flowtable-hook-attrs
754 name: flowtable-hook-attrs
1481 attribute-set: flowtable-attrs
1491 attribute-set: flowtable-attrs
1505 attribute-set: flowtable-attrs
1515 attribute-set: flowtable-attrs
/linux-6.15/tools/testing/selftests/net/netfilter/
H A Dnft_flowtable.sh155 flowtable f1 {