rate_control_set_rates(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– rate_control_set_rates(9) β€” the Kernel API Manual glow-up πŸ’–

okay bestie, welcome to the rate_control_set_rates chapter of the Kernel API Manual ✨ this one's all about handing your rate selection over to mac80211/driver and honestly it's giving "teamwork makes the dream work" energy 🫢


🌸 NAME 🌸

rate_control_set_rates β€” pass the sta rate selection to mac80211/driver


✨ SYNOPSIS ✨

int rate_control_set_rates (struct ieee80211_hw *hw , struct
       ieee80211_sta *pubsta , struct ieee80211_sta_rates *rates );

like, that's the whole signature, no cap πŸ’…


πŸŽ€ ARGUMENTS πŸŽ€

  • hw β€” a pointer you got from ieee80211_alloc_hw, literally just pass it along bestie 🌈
  • pubsta β€” a struct ieee80211_sta pointer to the target destination, i.e. the station you're doing all this for 🎯
  • rates β€” the new tx rate set to be used for this station, the fresh fit πŸ”₯

πŸ¦‹ DESCRIPTION πŸ¦‹

So here's the vibe: when you're not doing a rate control probe to test rates, the rate control module should pass its rate selection to mac80211. Like, that's its moment to shine ✨

If the driver supports receiving a station rate table, it will use it to make sure frames are always sent based on the most recent rate control module decision. the way that works?? iconic πŸ‘‘


⭐ RETURN ⭐

  • 0 on success πŸ₯³
  • An error code otherwise 😭

πŸ’œ SEE ALSO πŸ’œ

okay this list is long long but we don't skip sections in this house, so buckle up bestie 🧚


and that's the whole page bestie, you ate that πŸ’…βœ¨ this little gem lives in ./include/net and it's dated October 2026 β€” rate_control_set_rates(9), signing off πŸ«ΆπŸŽ€πŸ¦‹

πŸ“¦ where this page comes from