summaryrefslogtreecommitdiffstats
path: root/net/wireless
diff options
context:
space:
mode:
authorAntonio Quartulli2014-05-19 21:53:19 +0200
committerJohannes Berg2014-05-20 15:13:32 +0200
commit867d849fc844623a88ec7b380442952b5ffe5e68 (patch)
tree6f45a836156a9e0f049fe68acf07eaeae0cd67ed /net/wireless
parentcfg80211: constify wowlan/coalesce mask/pattern pointers (diff)
downloadkernel-qcow2-linux-867d849fc844623a88ec7b380442952b5ffe5e68.tar.gz
kernel-qcow2-linux-867d849fc844623a88ec7b380442952b5ffe5e68.tar.xz
kernel-qcow2-linux-867d849fc844623a88ec7b380442952b5ffe5e68.zip
cfg80211: export expected throughput through get_station()
Users may need information about the expected throughput towards a given peer. This value is supposed to consider the size overhead generated by the 802.11 header. This value is exported in kbps through the get_station() API by including it into the station_info object. Moreover, it is sent to user space when replying to the nl80211 GET_STATION command. This information will be useful to the batman-adv module which will use it for its new metric computation. Signed-off-by: Antonio Quartulli <antonio@open-mesh.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/wireless')
-rw-r--r--net/wireless/nl80211.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/wireless/nl80211.c b/net/wireless/nl80211.c
index 49adf58646e6..62bdb1adaa4d 100644
--- a/net/wireless/nl80211.c
+++ b/net/wireless/nl80211.c
@@ -3650,6 +3650,10 @@ static int nl80211_send_station(struct sk_buff *msg, u32 portid, u32 seq,
nla_put_u32(msg, NL80211_STA_INFO_TX_FAILED,
sinfo->tx_failed))
goto nla_put_failure;
+ if ((sinfo->filled & STATION_INFO_EXPECTED_THROUGHPUT) &&
+ nla_put_u32(msg, NL80211_STA_INFO_EXPECTED_THROUGHPUT,
+ sinfo->expected_throughput))
+ goto nla_put_failure;
if ((sinfo->filled & STATION_INFO_BEACON_LOSS_COUNT) &&
nla_put_u32(msg, NL80211_STA_INFO_BEACON_LOSS,
sinfo->beacon_loss_count))