net/netfilter/nf_flow_table_core.c
Source file repositories/reference/linux-study-clean/net/netfilter/nf_flow_table_core.c
File Facts
- System
- Linux kernel
- Corpus path
net/netfilter/nf_flow_table_core.c- Extension
.c- Size
- 22709 bytes
- Lines
- 857
- Domain
- Networking Core
- Bucket
- Sockets, Protocols, Packet Path, And Network Policy
- Inferred role
- Networking Core: exported/initcall integration point
- Status
- integration implementation candidate
Why This File Exists
Networking stack implementation surface: socket APIs, protocol dispatch, packet flow, routing, filtering, and network namespaces.
- Networking stack implementation surface: socket APIs, protocol dispatch, packet flow, routing, filtering, and network namespaces.
- Exports symbols or registers init work; inspect boot/module ordering and who consumes the exported contract.
- Uses kernel synchronization; read lock ordering, sleepability, and interrupt context assumptions before translating.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/kernel.hlinux/init.hlinux/module.hlinux/netfilter.hlinux/rhashtable.hlinux/netdevice.hnet/ip.hnet/ip6_route.hnet/netfilter/nf_tables.hnet/netfilter/nf_flow_table.hnet/netfilter/nf_conntrack.hnet/netfilter/nf_conntrack_core.hnet/netfilter/nf_conntrack_l4proto.hnet/netfilter/nf_conntrack_tuple.h
Detected Declarations
function flow_offload_fill_dirfunction flow_offload_dst_cookiefunction flow_offload_fill_routefunction nft_flow_dst_releasefunction flow_offload_route_initfunction nf_flow_has_expiredfunction flow_offload_fixup_tcpfunction flow_offload_fixup_ctfunction flow_offload_route_releasefunction flow_offload_freefunction flow_offload_hashfunction flow_offload_hash_objfunction flow_offload_hash_cmpfunction flow_offload_get_timeoutfunction flow_offload_addfunction flow_offload_refreshfunction flow_offload_delfunction flow_offload_teardownfunction flow_offload_lookupfunction nf_flow_table_iteratefunction nf_flow_custom_gcfunction nf_flow_table_tcp_timeoutfunction nf_flow_table_extend_ct_timeoutfunction nf_flow_offload_gc_stepfunction test_bitfunction nf_flow_table_gc_runfunction nf_flow_offload_work_gcfunction nf_flow_nat_port_tcpfunction nf_flow_nat_port_udpfunction nf_flow_nat_portfunction nf_flow_snat_portfunction nf_flow_dnat_portfunction nf_flow_table_initfunction nf_flow_table_do_cleanupfunction nf_flow_table_gc_cleanupfunction nf_flow_table_cleanupfunction nf_flow_table_freefunction nf_flow_table_init_netfunction nf_flow_table_fini_netfunction nf_flow_table_pernet_initfunction nf_flow_table_pernet_exitfunction list_for_each_entryfunction nf_flow_table_module_initfunction nf_flow_table_module_exitmodule init nf_flow_table_module_initexport flow_offload_allocexport flow_offload_route_initexport flow_offload_free
Annotated Snippet
module_init(nf_flow_table_module_init);
module_exit(nf_flow_table_module_exit);
MODULE_LICENSE("GPL");
MODULE_AUTHOR("Pablo Neira Ayuso <pablo@netfilter.org>");
MODULE_DESCRIPTION("Netfilter flow table module");
Annotation
- Immediate include surface: `linux/kernel.h`, `linux/init.h`, `linux/module.h`, `linux/netfilter.h`, `linux/rhashtable.h`, `linux/netdevice.h`, `net/ip.h`, `net/ip6_route.h`.
- Detected declarations: `function flow_offload_fill_dir`, `function flow_offload_dst_cookie`, `function flow_offload_fill_route`, `function nft_flow_dst_release`, `function flow_offload_route_init`, `function nf_flow_has_expired`, `function flow_offload_fixup_tcp`, `function flow_offload_fixup_ct`, `function flow_offload_route_release`, `function flow_offload_free`.
- Atlas domain: Networking Core / Sockets, Protocols, Packet Path, And Network Policy.
- Implementation status: integration implementation candidate.
- Synchronization appears in or near this file; preserve lock ordering, sleepability, and interrupt-context constraints.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.