shill: add RX_BITRATE to LinkStatistics |
|
Issue description
We currently track TX bitrate info (from NL80211_STA_INFO_TX_BITRATE properties) in our LinkStastics DBus properties, and this gets logged in feedback reports, etc., but we don't do the same for NL80211_STA_INFO_RX_BITRATE, when available. The netlink format is the same, so we should be able to easily reuse our existing code for this.
On a related note: not all drivers actually support this. Particularly, mwifiex seems to log some related info in debugfs, but it doesn't fill it out in the STA info:
mwifiex_dump_station_info(struct mwifiex_private *priv,
struct mwifiex_sta_node *node,
struct station_info *sinfo)
{
u32 rate;
sinfo->filled = BIT_ULL(NL80211_STA_INFO_RX_BYTES) | BIT_ULL(NL80211_STA_INFO_TX_BYTES) |
BIT_ULL(NL80211_STA_INFO_RX_PACKETS) | BIT_ULL(NL80211_STA_INFO_TX_PACKETS) |
BIT_ULL(NL80211_STA_INFO_TX_BITRATE) |
BIT_ULL(NL80211_STA_INFO_SIGNAL) | BIT_ULL(NL80211_STA_INFO_SIGNAL_AVG);
...
I might take a stab at this myself, but if someone else is raring to tackle it, feel free.
,
Nov 29
Anyone want to review? https://chromium-review.googlesource.com/c/chromiumos/platform2/+/1354191 https://chromium-review.googlesource.com/c/chromiumos/platform2/+/1354192 I haven't really tested the metrics part yet.
,
Nov 30
I (barely) reverse-engineered Marvell's rate-reporting, and I think this works! remote: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1357577 FROMLIST: mwifiex: debugfs: correct histogram spacing, formatting remote: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1357578 FROMLIST: mwifiex: refactor mwifiex_parse_htinfo() for reuse remote: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1357599 FROMLIST: mwifiex: add NL80211_STA_INFO_RX_BITRATE support
,
Jan 18
(4 days ago)
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/platform2/+/fc73f7a9e6ed76d2a53321c75adccdd35561ea45 commit fc73f7a9e6ed76d2a53321c75adccdd35561ea45 Author: Brian Norris <briannorris@chromium.org> Date: Fri Jan 18 08:46:01 2019 shill: wifi: add RxBitrate We already have TxBitrate handling. RxBitrate has the same netlink format. BUG=chromium:909896 TEST=unit tests; check, e.g., `connectivity show Devices` with drivers that support RX_BITRATE (e.g., iwl7000 or ath10k) and those that don't (e.g., mwifiex) Change-Id: I980c0cc8ecff249fa1a6176c8c9d209e01b9d3cb Signed-off-by: Brian Norris <briannorris@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/1354191 Reviewed-by: Kirtika Ruchandani <kirtika@chromium.org> [modify] https://crrev.com/fc73f7a9e6ed76d2a53321c75adccdd35561ea45/shill/wifi/wifi.cc [modify] https://crrev.com/fc73f7a9e6ed76d2a53321c75adccdd35561ea45/shill/wifi/wifi.h [modify] https://crrev.com/fc73f7a9e6ed76d2a53321c75adccdd35561ea45/shill/wifi/wifi_test.cc [modify] https://crrev.com/fc73f7a9e6ed76d2a53321c75adccdd35561ea45/system_api/dbus/shill/dbus-constants.h |
|
►
Sign in to add a comment |
|
Comment 1 by briannorris@chromium.org
, Nov 29