STRUCT MESH_STA(9)
π struct mesh_sta(9)
okay bestie, welcome to the Kernel API Manual β¨ this one's about struct mesh_sta β literally the mesh STA information struct, and yes it lives in the kernel, and yes it's iconic π
πΈ NAME
struct mesh_sta β mesh STA information π«Ά
β¨ SYNOPSIS
struct mesh_sta {
struct timer_list plink_timer;
struct sta_info *plink_sta;
s64 t_offset;
s64 t_offset_setpoint;
spinlock_t plink_lock;
u16 llid;
u16 plid;
u16 aid;
u16 reason;
u8 plink_retries;
bool processed_beacon;
bool connected_to_gate;
bool connected_to_as;
enum nl80211_plink_state plink_state;
u32 plink_timeout;
enum nl80211_mesh_power_mode local_pm;
enum nl80211_mesh_power_mode peer_pm;
enum nl80211_mesh_power_mode nonpeer_pm;
struct ewma_mesh_fail_avg fail_avg;
struct ewma_mesh_tx_rate_avg tx_rate_avg;
};
no cap, that's the whole struct, every field, nothing skipped π
π¦ Members
plink_timerβ the peer link watch timer, ticking away like it's got main character energy β°plink_staβ thesta_infoof that peer link watch timer π«Άt_offsetβ timing offset relative to this host, iykyk π°οΈt_offset_setpointβ the reference timing offset of this sta, the one you use when calculating clockdrift βplink_lockβ serialize access to plink fields π literally do not touch those fields without itllidβ Local link ID πplidβ Peer link ID π«aidβ local aid, supplied by the peer πreasonβ cancel reason onPLINK_HOLDINGstate πplink_retriesβ retries in establishment πprocessed_beaconβ set totrueafter peer rates and capabilities are processed βconnected_to_gateβtrueif the mesh STA has a path to a mesh gate πͺconnected_to_asβtrueif the mesh STA has a path to a authentication server πplink_stateβ peer link state πplink_timeoutβ timeout of the peer link β³local_pmβ local link-specific power save mode πpeer_pmβ peer-specific power save mode towards the local STA πnonpeer_pmβ STA power save mode towards non-peer neighbors πfail_avgβ moving percentage of failed MSDUs πtx_rate_avgβ moving average of tx bitrate π
π SEE ALSO
Kernel file ./net/mac80211/sta_info.h plus these absolute legends: enum ieee80211_sta_info_flags(9), struct tid_ampdu_tx(9), struct tid_ampdu_rx(9), struct sta_ampdu_mlme(9), struct ieee80211_fast_tx(9), struct ieee80211_fast_rx(9), struct link_sta_info(9), struct ieee80211_sta_removed_link_stats(9), struct sta_info(9), __sta_info_flush(9), sta_info_flush(9) π§ go read them, fr fr
this page comes from ./net/mac80211 and it's dated October 2026 β that's the source, the version, and the date all in one, so jot that down bestie π
k bye, slay, and remember: the vibe check is the plink_lock π₯π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms