cfg80211: Support assoc-at timer in sta-info
Report timestamp of when sta became associated. This is the boottime clock, units are nano-seconds. Signed-off-by: Ben Greear <greearb@candelatech.com> Link: https://lore.kernel.org/r/20190809180001.26393-1-greearb@candelatech.com Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
62524a5857
commit
6c7a00339e
|
@ -1330,6 +1330,7 @@ struct cfg80211_tid_stats {
|
|||
* indicate the relevant values in this struct for them
|
||||
* @connected_time: time(in secs) since a station is last connected
|
||||
* @inactive_time: time since last station activity (tx/rx) in milliseconds
|
||||
* @assoc_at: bootime (ns) of the last association
|
||||
* @rx_bytes: bytes (size of MPDUs) received from this station
|
||||
* @tx_bytes: bytes (size of MPDUs) transmitted to this station
|
||||
* @llid: mesh local link id
|
||||
|
@ -1390,6 +1391,7 @@ struct station_info {
|
|||
u64 filled;
|
||||
u32 connected_time;
|
||||
u32 inactive_time;
|
||||
u64 assoc_at;
|
||||
u64 rx_bytes;
|
||||
u64 tx_bytes;
|
||||
u16 llid;
|
||||
|
|
|
@ -3201,6 +3201,8 @@ enum nl80211_sta_bss_param {
|
|||
* sent to the station (u64, usec)
|
||||
* @NL80211_STA_INFO_AIRTIME_WEIGHT: current airtime weight for station (u16)
|
||||
* @NL80211_STA_INFO_AIRTIME_LINK_METRIC: airtime link metric for mesh station
|
||||
* @NL80211_STA_INFO_ASSOC_AT_BOOTTIME: Timestamp (CLOCK_BOOTTIME, nanoseconds)
|
||||
* of STA's association
|
||||
* @__NL80211_STA_INFO_AFTER_LAST: internal
|
||||
* @NL80211_STA_INFO_MAX: highest possible station info attribute
|
||||
*/
|
||||
|
@ -3247,6 +3249,7 @@ enum nl80211_sta_info {
|
|||
NL80211_STA_INFO_TX_DURATION,
|
||||
NL80211_STA_INFO_AIRTIME_WEIGHT,
|
||||
NL80211_STA_INFO_AIRTIME_LINK_METRIC,
|
||||
NL80211_STA_INFO_ASSOC_AT_BOOTTIME,
|
||||
|
||||
/* keep last */
|
||||
__NL80211_STA_INFO_AFTER_LAST,
|
||||
|
|
|
@ -5032,6 +5032,7 @@ static int nl80211_send_station(struct sk_buff *msg, u32 cmd, u32 portid,
|
|||
|
||||
PUT_SINFO(CONNECTED_TIME, connected_time, u32);
|
||||
PUT_SINFO(INACTIVE_TIME, inactive_time, u32);
|
||||
PUT_SINFO_U64(ASSOC_AT_BOOTTIME, assoc_at);
|
||||
|
||||
if (sinfo->filled & (BIT_ULL(NL80211_STA_INFO_RX_BYTES) |
|
||||
BIT_ULL(NL80211_STA_INFO_RX_BYTES64)) &&
|
||||
|
|
Loading…
Reference in New Issue