STRUCT MESH_TABLE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct mesh_table(9)

okay so welcome to the Kernel API Manual bestie β€” today's main character is struct mesh_table, aka the mesh hash table, and honestly? she's holding the whole mesh together 🫢


✨ NAME ✨

struct mesh_table β€” mesh hash table. that's it, that's the vibe 🌸


πŸ¦‹ SYNOPSIS πŸ¦‹

like, here's literally the whole struct, no cap:

struct mesh_table {
    struct hlist_head known_gates;
    spinlock_t gates_lock;
    struct rhashtable rhead;
    struct hlist_head walk_head;
    spinlock_t walk_lock;
    atomic_t entries;
 };

πŸŽ€ Members πŸŽ€

okay so let's go member by member, iykyk πŸ‘‘

  • known_gates β€” the list of known mesh gates plus their mpaths, as seen by the station. and ngl, a gate's mpath may or may not be resolved and active β€” it's giving "it's complicated" 😭
  • gates_lock β€” the lock that protects updates to known_gates. don't touch known_gates without her πŸ’…
  • rhead β€” the rhashtable containing struct mesh_paths, keyed by dest addr. iconic data structure behavior ✨
  • walk_head β€” the linked list containing all mesh_path objects. she's just walking through, periodt πŸšΆβ€β™€οΈ
  • walk_lock β€” the lock protecting walk_head, obviously. no walk without her πŸ”’
  • entries β€” the number of entries in the table. literally just counting, bestie πŸ”’

🌈 SEE ALSO 🌈

  • Kernel file ./net/mac80211/ieee80211_i.h enum
  • ieee80211_bss_corrupt_data_flags(9)
  • enum ieee80211_bss_valid_data_flags(9)
  • enum ieee80211_packet_rx_flags(9)
  • enum ieee80211_rx_flags(9)
  • struct ieee80211_if_ocb(9)
  • struct ieee80211_mesh_sync_ops(9)
  • struct mesh_tx_cache(9)
  • enum ieee80211_sub_if_data_flags(9)
  • enum ieee80211_sdata_state_bits(9)
  • enum ieee80211_chanctx_mode(9)
  • enum ieee80211_chanctx_replace_state(9)
  • struct txq_info(9)
  • struct ieee80211_if_nan(9)
  • struct ieee80211_if_nan_data(9)
  • enum mac80211_scan_flags(9)
  • enum mac80211_scan_state(9)
  • ieee80211_parse_ch_switch_ie(9)
  • struct ieee80211_elems_parse_params(9)

go read them, bestie, they're all lowkey linked πŸ‘€


and that's the page!! sign-off time πŸŽ€ this one lives in <pink>./net/mac80211</pink>, dated October 2026, and she's filed under struct mesh_table(9) β€” slay, ate, no crumbs πŸ’–βœ¨πŸ¦‹

πŸ“¦ where this page comes from