Home
last modified time | relevance | path

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

/linux/Documentation/networking/
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/net/netfilter/
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 …]
A Dnft_flow_offload.c20 struct nft_flowtable *flowtable; member
97 unsigned char *ha, struct nf_flowtable *flowtable) in nft_dev_path_info() argument
166 if (nf_flowtable_hw_offload(flowtable) && in nft_dev_path_info()
297 struct nf_flowtable *flowtable = &priv->flowtable->data; in nft_flow_offload_eval() local
366 ret = flow_offload_add(flowtable, flow); in nft_flow_offload_eval()
407 struct nft_flowtable *flowtable; in nft_flow_offload_init() local
414 if (IS_ERR(flowtable)) in nft_flow_offload_init()
415 return PTR_ERR(flowtable); in nft_flow_offload_init()
417 if (!nft_use_inc(&flowtable->use)) in nft_flow_offload_init()
420 priv->flowtable = flowtable; in nft_flow_offload_init()
[all …]
A Dnf_flow_table_core.c378 void (*iter)(struct nf_flowtable *flowtable, in nf_flow_table_iterate() argument
546 flow_block_init(&flowtable->flow_block); in nf_flow_table_init()
547 init_rwsem(&flowtable->flow_block_lock); in nf_flow_table_init()
549 err = rhashtable_init(&flowtable->rhashtable, in nf_flow_table_init()
555 &flowtable->gc_work, HZ); in nf_flow_table_init()
558 list_add(&flowtable->list, &flowtables); in nf_flow_table_init()
585 flush_delayed_work(&flowtable->gc_work); in nf_flow_table_gc_cleanup()
586 nf_flow_table_offload_flush(flowtable); in nf_flow_table_gc_cleanup()
591 struct nf_flowtable *flowtable; in nf_flow_table_cleanup() local
594 list_for_each_entry(flowtable, &flowtables, list) in nf_flow_table_cleanup()
[all …]
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()
A Dnf_tables_api.c8384 return flowtable; in nft_flowtable_lookup()
8545 flowtable->data.type->setup(&flowtable->data, hook->ops.dev, in nft_unregister_flowtable_hook()
8593 err = flowtable->data.type->setup(&flowtable->data, in nft_register_flowtable_net_hooks()
8601 flowtable->data.type->setup(&flowtable->data, in nft_register_flowtable_net_hooks()
8761 flowtable = kzalloc(sizeof(*flowtable), GFP_KERNEL_ACCOUNT); in nf_tables_newflowtable()
8762 if (!flowtable) { in nf_tables_newflowtable()
8829 flowtable->data.type->free(&flowtable->data); in nf_tables_newflowtable()
8835 kfree(flowtable); in nf_tables_newflowtable()
9206 flowtable->data.type->free(&flowtable->data); in nf_tables_flowtable_destroy()
9208 flowtable->data.type->setup(&flowtable->data, hook->ops.dev, in nf_tables_flowtable_destroy()
[all …]
/linux/include/net/netfilter/
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()
288 void nf_flow_table_gc_cleanup(struct nf_flowtable *flowtable,
309 int nf_flow_offload_xdp_setup(struct nf_flowtable *flowtable,
331 void nf_flow_offload_add(struct nf_flowtable *flowtable,
333 void nf_flow_offload_del(struct nf_flowtable *flowtable,
335 void nf_flow_offload_stats(struct nf_flowtable *flowtable,
338 void nf_flow_table_offload_flush(struct nf_flowtable *flowtable);
339 void nf_flow_table_offload_flush_cleanup(struct nf_flowtable *flowtable);
341 int nf_flow_table_offload_setup(struct nf_flowtable *flowtable,
A Dnf_tables.h1475 struct nft_flowtable *flowtable,
1804 struct nft_flowtable *flowtable; member
1813 nft_trans_container_flowtable(trans)->flowtable
/linux/Documentation/netlink/specs/
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/tools/testing/selftests/net/netfilter/
A Dnft_flowtable.sh155 flowtable f1 {

Completed in 51 milliseconds