Skip to content

RFC Export the expected throughput

Antonio Quartulli batman linux-wireless 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v2 RFC Latest6 patches 19 repliesIn review

Patches in v2 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/6cfg80211: export expected throughput through get_station()include/net/cfg80211.h+35 -284 replies
2/6mac80211: add new RC API to retrieve expected throughputinclude/net/mac80211.h+3 -08 replies
3/6mac80211: export expected throughput in set_sta_info()net/mac80211/cfg.c+17 -00 replies
4/6mac80211: minstrel - implement get_expected_throughput() APInet/mac80211/rc80211_minstrel.c+15 -03 replies
5/6mac80211: minstrel_ht - implement get_expected_throughput() APInet/mac80211/rc80211_minstrel_ht.c+19 -00 replies
6/6cfg80211: implement cfg80211_get_station cfg80211 APIinclude/net/cfg80211.h net/wireless/util.c+29 -04 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v2 yet.

Read the v2 thread

Cover letter [B.A.T.M.A.N.] [RFCv2 0/6] Export the expected throughput

The "Expected throughput" towards a generic wireless peer is a value that can be used by other kernel components to achieve different goals.
In particular we have 802.11s and batman-adv which will iuse this estimation to compute their throughput based metric. Therefore with this patchset I wanted to export this result and make it available for future use.

Changes included in this patchset:
- add the new get_expected_throughput() RC API
- export the result of such API via cfg80211::get_station()
- implement the get_expected_throughput() RC API for minstrel(_ht)

For what concerns Minstrel_HT I decided to directly re-use the throughput value computed by the algorithm itself with minstrel_ht_calc_tp() for max_tp_rate.

For the legacy Minstrel instead I computed the expected throughput as the product of the max_tp bitrate multplied by its probability of success.

I am not entirely sure about passing sband as third parameter to get_expected_throughput()..maybe somebody can suggest a better solution.

Cheers,

Antonio Quartulli (6):
cfg80211: export expected throughput through get_station()
mac80211: add new RC API to retrieve expected throughput
mac80211: export expected throughput in set_sta_info()
mac80211: minstrel - implement get_expected_throughput() API
mac80211: minstrel_ht - implement get_expected_throughput() API
cfg80211: implement cfg80211_get_station cfg80211 API

 include/net/cfg80211.h             | 74 +++++++++++++++++++++++---------------
 include/net/mac80211.h             |  3 ++
 net/mac80211/cfg.c                 | 17 +++++++++
 net/mac80211/rc80211_minstrel.c    | 15 ++++++++
 net/mac80211/rc80211_minstrel_ht.c | 19 ++++++++++
 net/wireless/util.c                | 18 ++++++++++
 6 files changed, 118 insertions(+), 28 deletions(-)
Signature · 1 line
1.8.3.2