STRUCT FDB_DUMP_ENTRY(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct fdb_dump_entry(9) β€” Kernel API Manual, but make it make sense πŸŽ€

okay so bestie, welcome to struct fdb_dump_entry(9) β€” it's a page from the Kernel API Manual and it's literally just one little struct that holds a single fdb snapshot entry. that's the whole vibe. short, sweet, iconic. let's get into it ✨


✨ NAME ✨

struct fdb_dump_entry β€” fdb snapshot entry 🫢


🌸 SYNOPSIS 🌸

here's the whole thing, character for character, no cap:

struct fdb_dump_entry {
    u8 mac_addr[6];
    u8 type;
    u8 if_info;
    u8 if_mask[8];
 };

like... four fields. that's her. that's the whole struct. main character energy fr πŸ’…


πŸ¦‹ Members πŸ¦‹

okay so let's meet the squad one by one πŸ’–

  • mac_addr β€” the MAC address. that's it, that's the field. it's a u8 array of 6, obviously, because MAC addresses are six bytes and we respect that πŸ’β€β™€οΈ
  • type β€” this one's doing double duty, she's a bitfield situation:
    • bit0 β€” DINAMIC(1) / STATIC(0) πŸ‘€ (yes, that spelling is exactly how it's written, don't come for me, i just work here)
    • bit1 β€” UNICAST(1) / MULTICAST(0)

so she's packing two whole facts into one tiny byte. efficiency queen πŸ‘‘

  • if_info β€” this field changes her whole personality depending on the entry type:
    • if it's unicast β†’ it's the egress interface
    • if it's multicast β†’ it's the number of egress interfaces

same byte, two meanings. it's giving versatility ✨

  • if_mask β€” multicast only bestie: this is the egress interface mask 🌈
ngl the whole struct is one of those "small but mighty" situations β€” everything's a u8, everything's doing the most, and every byte is booked and busy πŸ’€

πŸ”₯ SEE ALSO πŸ”₯

okay so this is the part where i list literally everyone she's associated with, because the manpage said so and we do not skip the boring parts in this house 🫢 here's the full guest list:

  • the Kernel file ./drivers/net/ethernet/freescale/dpaa2/dpsw.h πŸ‘‘
  • DPSW_OPT_FLOODING_DIS(9)
  • DPSW_OPT_MULTICAST_DIS(9)
  • DPSW_OPT_CTRL_IF_DIS(9)
  • enum dpsw_component_type(9)
  • enum dpsw_flooding_cfg(9)
  • enum dpsw_broadcast_cfg(9)
  • DPSW_IRQ_EVENT_LINK_CHANGED(9)
  • DPSW_IRQ_EVENT_ENDPOINT_CHANGED(9)
  • struct dpsw_irq_cfg(9)
  • struct dpsw_attr(9)
  • struct dpsw_ctrl_if_attr(9)
  • struct dpsw_ctrl_if_pools_cfg(9)
  • enum dpsw_action(9)
  • struct dpsw_link_cfg(9)
  • struct dpsw_link_state(9)
  • struct dpsw_tci_cfg(9)
  • enum dpsw_stp_state(9)
  • struct dpsw_stp_cfg(9)
  • enum dpsw_accepted_frames(9)
  • enum dpsw_counter(9)
  • struct dpsw_if_attr(9)
  • struct dpsw_vlan_cfg(9)
  • struct dpsw_vlan_if_cfg(9)
  • enum dpsw_fdb_entry_type(9)
  • struct dpsw_fdb_unicast_cfg(9)
  • struct dpsw_fdb_multicast_cfg(9)
  • enum dpsw_learning_mode(9)
  • struct dpsw_fdb_attr(9)
  • struct dpsw_fdb_cfg(9)
  • enum dpsw_flood_type(9)
  • struct dpsw_acl_cfg(9)
  • struct dpsw_acl_if_cfg(9)
  • struct dpsw_acl_fields(9)
  • struct dpsw_acl_key(9)
  • enum dpsw_acl_action(9)
  • struct dpsw_acl_result(9)
  • struct dpsw_acl_entry_cfg(9)
  • enum dpsw_reflection_filter(9)
  • struct dpsw_reflection_cfg(9)
  • struct dpsw_lag_cfg(9)

like i said. everyone. 😭


and that's the page bestie!! πŸŽ€ source file lives over at ./drivers/net/ethernet/freesca... (truncated in the original, not me being lazy i prommy πŸ’€), dated October 2026, and yes the whole thing is still struct fdb_dump_entry(9) in spirit. periodt. πŸ’œ

πŸ“¦ where this page comes from