STRUCT NFP_FL_TUNNEL_OFFLOADS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– NAME πŸ’–

struct nfp_fl_tunnel_offloads β€” the priv data for tunnel offloads, bestie. That's literally the whole vibe.

So this is a page from the Kernel API Manual, and it's giving very much "kernel struct documentation but make it make sense." Let's get into it 🫢


✨ SYNOPSIS ✨

struct nfp_fl_tunnel_offloads {
    struct rhashtable offloaded_macs;
    struct list_head ipv4_off_list;
    struct list_head ipv6_off_list;
    struct mutex ipv4_off_lock;
    struct mutex ipv6_off_lock;
    struct ida mac_off_ids;
    struct notifier_block neigh_nb;
 };

That's the whole struct, no cap. Every member, exactly as it appears πŸ‘‘


πŸŽ€ MEMBERS πŸŽ€

Okay so here's the cast of characters, and each one has main character energy in its own little way:

  • offloaded_macs β€” a hashtable holding the offloaded MAC addresses. It's the rhashtable of the group chat, fr fr πŸ’…
  • ipv4_off_list β€” a list of the IPv4 addresses that need to be offloaded. Keeping track, lowkey iconic ✨
  • ipv6_off_list β€” same deal but for IPv6, a list of IPv6 addresses to offload. IPv6 gets its own list, we love equality 🌈
  • ipv4_off_lock β€” the lock guarding the IPv4 address list. Do not touch the list without it, bestie πŸ”’
  • ipv6_off_lock β€” the lock for the IPv6 address list. Same energy, different address family πŸ’œ
  • mac_off_ids β€” an IDA used to manage id assignment for offloaded MACs. It's handing out IDs like a bouncer at the club 🎟️
  • neigh_nb β€” a notifier block that monitors neighbour state. It's literally watching the neighbours, nosy but useful πŸ™ˆ

🌸 SEE ALSO 🌸

Like, go read these next, they're all siblings of this struct and they ate:

  • The kernel file ./drivers/net/ethernet/netronome/nfp/flower/main.h β€” that's where the family lives 🏑
  • struct nfp_tun_neigh_lag(9)
  • struct nfp_tun_neigh(9)
  • struct nfp_tun_neigh_ext(9)
  • struct nfp_tun_neigh_v4(9)
  • struct nfp_tun_neigh_v6(9)
  • struct nfp_neigh_entry(9)
  • struct nfp_predt_entry(9)
  • struct nfp_mtu_conf(9)
  • struct nfp_fl_lag(9)
  • struct nfp_fl_internal_ports(9)
  • struct nfp_flower_priv(9)
  • struct nfp_fl_qos(9)
  • struct nfp_flower_repr_priv(9)
  • struct nfp_flower_non_repr_priv(9)
  • struct nfp_ipv6_addr_entry(9)

That's the whole page, no skips, no shortcuts β€” every member and every reference is right there where it belongs πŸ’–

Okay bye bestie, go off and read the kernel source, you got this πŸ¦‹

β€” signed off with love from ./drivers/net/ethernet/netrono..., dated October 2026, and yes the page is still called struct nfp_...nel_offloads(9) in the header because truncation is the moment πŸ’€βœ¨ πŸŽ€

πŸ“¦ where this page comes from