STRUCT NFP_FL_CT_FLOW_ENTRY(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct nfp_fl_ct_flow_entry(9) πŸ’–

okay so this is a Kernel API Manual page, bestie β€” it's literally the struct nfp_fl_ct_flow_entry, and it's the lil container that holds all your conntrack flow info. it's giving "small struct, huge responsibilities" and honestly? we stan. 🫢


✨ NAME ✨

struct nfp_fl_ct_flow_entry β€” the flow entry that's carrying around all your conntrack flow information πŸ’…


🌸 SYNOPSIS 🌸

struct nfp_fl_ct_flow_entry {
    unsigned long cookie;
    struct list_head list_node;
    u32 chain_index;
    u32 goto_chain_index;
    struct net_device *netdev;
    struct nfp_fl_ct_zone_entry *zt;
    struct list_head children;
    struct flow_rule *rule;
    struct flow_stats stats;
    struct nfp_fl_nft_tc_merge *prev_m_entries[NFP_MAX_RECIRC_CT_ZONES -
1];
    u8 num_prev_m_entries;
    u8 tun_offset;
    u8 flags;
    u8 type;
};

no cap, look at her. the prev_m_entries array is so long it had to wrap a line and it did NOT care. iconic behavior. πŸ‘‘


πŸŽ€ Members πŸŽ€

  • cookie β€” the flow cookie πŸͺ. it's the same as the original TC flow, and it's used as the key. literally the main character of the identity department.
  • list_node β€” used by the list. that's it, that's the whole vibe. it's a struct list_head doing list things.
  • chain_index β€” chain index of the original flow πŸ”—.
  • goto_chain_index β€” the goto chain index of the flow. yes it's different from chain_index, don't @ me.
  • netdev β€” the net_device structure. the actual network device, right there.
  • zt β€” a reference to the zone table this whole thing belongs to πŸ—‚οΈ.
  • children β€” list of tc_merge flows that this flow forms part of. found family fr fr πŸ’–.
  • rule β€” reference to the original TC flow rule.
  • stats β€” used to cache stats for updating πŸ“Š. it's holding your numbers so they're ready when you need 'em.
  • prev_m_entries β€” array of ALL previous nft_tc_merge entries. all of them. every single one. it's NFP_MAX_RECIRC_CT_ZONES - 1 wide and proud of it πŸ¦‹.
  • num_prev_m_entries β€” the number of all those previous nft_tc_merge entries. someone's gotta keep count.
  • tun_offset β€” used to indicate the tunnel action offset in the action list πŸ•³οΈβœ¨
  • flags β€” used to indicate a flow flag like NAT, which is used by merge. flutter that flag, girl 🚩
  • type β€” the type of ct-entry, straight from enum ct_entry_type.
lowkey important: cookie is the key, and prev_m_entries is sized NFP_MAX_RECIRC_CT_ZONES - 1 β€” keep both exactly as-is, bestie, no editing the array size, i'm begging πŸ™ˆ

🌈 SEE ALSO 🌈

like, go read the whole friend group. they all link up. iykyk 🀝


and that's the page!! πŸŽ‰ brought to you by the source ./drivers/net/ethernet/netrono... (yes it's truncated in the original, i'm not touching it, it's fragile πŸ’€) and dated October 2026 ⭐ β€” mwah, go forth and handle your conntrack flows, bestie πŸ’œπŸ§šβ€β™€οΈ

πŸ“¦ where this page comes from