STRUCT BATADV_TP_SENDER_CC(9)
π struct batadv_tp_sender_cc(9) β like, the whole vibe
okay bestie, so this page lives in the Kernel API Manual and it's literally all about struct batadv_tp_sender_cc β the lil bundle of congestion control variables. no cap, that's the entire personality. π
β¨ NAME β¨
struct batadv_tp_sender_cc β congestion control variables π¦
πΈ SYNOPSIS πΈ
here's the shape of it, and yes every field matters so pls don't skip:
struct batadv_tp_sender_cc {
bool fast_recovery:1;
u8 dup_acks;
u16 dec_cwnd;
u32 cwnd;
u32 ss_threshold;
u32 last_acked;
u32 last_sent;
u32 recover;
u32 rto;
u32 srtt;
u32 rttvar;
};
π Members π
fast_recoveryβtrueif we're in Fast Recovery mode. that's it, that's the flag πdup_acksβ the duplicate ACKs counter, keeping tally frdec_cwndβ the decimal part of thecwndthat gets used during linear growth (yes, decimal part, she's precise)cwndβ current size of the congestion window, the main character honestly πss_thresholdβ the Slow Start threshold. the momentcwndexceeds this value, the connection switches to the Congestion Avoidance state. periodt. βlast_ackedβ last acked bytelast_sentβ last sent byte, not yet acked (she's out there, unconfirmed π)recoverβ the last sent seqno when entering Fast Recoveryrtoβ sender timeoutsrttβ smoothed RTT scaled by 2^3rttvarβ RTT variation scaled by 2^2
π«Ά SEE ALSO π«Ά
kernel file ./net/batman-adv/types.h, plus the entire extended friend group β literally the whole cast, no one left out:
batadv_dat_addr_t(9)enum batadv_dhcp_recipient(9)BATADV_TT_REMOTE_MASK(9)BATADV_TT_SYNC_MASK(9)struct batadv_ogm_buf(9)struct batadv_hard_iface_bat_iv(9)enum batadv_v_hard_iface_flags(9)struct batadv_hard_iface_bat_v(9)enum batadv_hard_iface_wifi_flags(9)struct batadv_wifi_net_device_state(9)struct batadv_hard_iface(9)struct batadv_orig_ifinfo_bat_iv(9)struct batadv_orig_ifinfo(9)struct batadv_frag_table_entry(9)struct batadv_frag_list_entry(9)struct batadv_vlan_tt(9)struct batadv_orig_node_vlan(9)struct batadv_orig_bat_iv(9)struct batadv_orig_node(9)enum batadv_orig_capabilities(9)struct batadv_gw_node(9)struct batadv_hardif_neigh_node_bat_v(9)struct batadv_hardif_neigh_node(9)struct batadv_neigh_node(9)struct batadv_neigh_ifinfo_bat_iv(9)struct batadv_neigh_ifinfo_bat_v(9)struct batadv_neigh_ifinfo(9)struct batadv_bcast_duplist_entry(9)enum batadv_counters(9)struct batadv_priv_tt(9)struct batadv_priv_bla(9)struct batadv_priv_gw(9)struct batadv_priv_tvlv(9)struct batadv_priv_dat(9)struct batadv_mcast_querier_state(9)struct batadv_mcast_mla_flags(9)struct batadv_priv_mcast(9)struct batadv_tp_unacked(9)struct batadv_tp_vars_common(9)struct batadv_tp_sender(9)struct batadv_tp_receiver(9)struct batadv_meshif_vlan(9)struct batadv_priv_bat_v(9)struct batadv_priv(9)enum batadv_bla_backbone_gw_state(9)struct batadv_bla_backbone_gw(9)struct batadv_bla_claim(9)struct batadv_tt_common_entry(9)struct batadv_tt_local_entry(9)struct batadv_tt_global_entry(9)struct batadv_tt_orig_list_entry(9)struct batadv_tt_change_node(9)struct batadv_tt_req_node(9)struct batadv_tt_roam_node(9)struct batadv_skb_cb(9)struct batadv_forw_packet(9)struct batadv_algo_iface_ops(9)struct batadv_algo_neigh_ops(9)struct batadv_algo_orig_ops(9)struct batadv_algo_gw_ops(9)struct batadv_algo_ops(9)struct batadv_dat_entry(9)struct batadv_hw_addr(9)struct batadv_dat_candidate(9)struct batadv_tvlv_container(9)struct batadv_tvlv_handler(9)enum batadv_tvlv_handler_flags(9)
and that's the whole thing, bestie π§ ok bye, mwah π this one came from ./net/batman-adv, dated October 2026, and it's filed under struct batadv_tp_sender_cc(9) β iykyk π
π¦ 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