|
@@ -2114,38 +2114,38 @@ void sta_set_sinfo(struct sta_info *sta, struct station_info *sinfo,
|
|
|
|
|
|
drv_sta_statistics(local, sdata, &sta->sta, sinfo);
|
|
|
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_INACTIVE_TIME) |
|
|
|
- BIT(NL80211_STA_INFO_STA_FLAGS) |
|
|
|
- BIT(NL80211_STA_INFO_BSS_PARAM) |
|
|
|
- BIT(NL80211_STA_INFO_CONNECTED_TIME) |
|
|
|
- BIT(NL80211_STA_INFO_RX_DROP_MISC);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_INACTIVE_TIME) |
|
|
|
+ BIT_ULL(NL80211_STA_INFO_STA_FLAGS) |
|
|
|
+ BIT_ULL(NL80211_STA_INFO_BSS_PARAM) |
|
|
|
+ BIT_ULL(NL80211_STA_INFO_CONNECTED_TIME) |
|
|
|
+ BIT_ULL(NL80211_STA_INFO_RX_DROP_MISC);
|
|
|
|
|
|
if (sdata->vif.type == NL80211_IFTYPE_STATION) {
|
|
|
sinfo->beacon_loss_count = sdata->u.mgd.beacon_loss_count;
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_BEACON_LOSS);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_BEACON_LOSS);
|
|
|
}
|
|
|
|
|
|
sinfo->connected_time = ktime_get_seconds() - sta->last_connected;
|
|
|
sinfo->inactive_time =
|
|
|
jiffies_to_msecs(jiffies - ieee80211_sta_last_active(sta));
|
|
|
|
|
|
- if (!(sinfo->filled & (BIT(NL80211_STA_INFO_TX_BYTES64) |
|
|
|
- BIT(NL80211_STA_INFO_TX_BYTES)))) {
|
|
|
+ if (!(sinfo->filled & (BIT_ULL(NL80211_STA_INFO_TX_BYTES64) |
|
|
|
+ BIT_ULL(NL80211_STA_INFO_TX_BYTES)))) {
|
|
|
sinfo->tx_bytes = 0;
|
|
|
for (ac = 0; ac < IEEE80211_NUM_ACS; ac++)
|
|
|
sinfo->tx_bytes += sta->tx_stats.bytes[ac];
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_TX_BYTES64);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_TX_BYTES64);
|
|
|
}
|
|
|
|
|
|
- if (!(sinfo->filled & BIT(NL80211_STA_INFO_TX_PACKETS))) {
|
|
|
+ if (!(sinfo->filled & BIT_ULL(NL80211_STA_INFO_TX_PACKETS))) {
|
|
|
sinfo->tx_packets = 0;
|
|
|
for (ac = 0; ac < IEEE80211_NUM_ACS; ac++)
|
|
|
sinfo->tx_packets += sta->tx_stats.packets[ac];
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_TX_PACKETS);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_TX_PACKETS);
|
|
|
}
|
|
|
|
|
|
- if (!(sinfo->filled & (BIT(NL80211_STA_INFO_RX_BYTES64) |
|
|
|
- BIT(NL80211_STA_INFO_RX_BYTES)))) {
|
|
|
+ if (!(sinfo->filled & (BIT_ULL(NL80211_STA_INFO_RX_BYTES64) |
|
|
|
+ BIT_ULL(NL80211_STA_INFO_RX_BYTES)))) {
|
|
|
sinfo->rx_bytes += sta_get_stats_bytes(&sta->rx_stats);
|
|
|
|
|
|
if (sta->pcpu_rx_stats) {
|
|
@@ -2157,10 +2157,10 @@ void sta_set_sinfo(struct sta_info *sta, struct station_info *sinfo,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_RX_BYTES64);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_RX_BYTES64);
|
|
|
}
|
|
|
|
|
|
- if (!(sinfo->filled & BIT(NL80211_STA_INFO_RX_PACKETS))) {
|
|
|
+ if (!(sinfo->filled & BIT_ULL(NL80211_STA_INFO_RX_PACKETS))) {
|
|
|
sinfo->rx_packets = sta->rx_stats.packets;
|
|
|
if (sta->pcpu_rx_stats) {
|
|
|
for_each_possible_cpu(cpu) {
|
|
@@ -2170,17 +2170,17 @@ void sta_set_sinfo(struct sta_info *sta, struct station_info *sinfo,
|
|
|
sinfo->rx_packets += cpurxs->packets;
|
|
|
}
|
|
|
}
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_RX_PACKETS);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_RX_PACKETS);
|
|
|
}
|
|
|
|
|
|
- if (!(sinfo->filled & BIT(NL80211_STA_INFO_TX_RETRIES))) {
|
|
|
+ if (!(sinfo->filled & BIT_ULL(NL80211_STA_INFO_TX_RETRIES))) {
|
|
|
sinfo->tx_retries = sta->status_stats.retry_count;
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_TX_RETRIES);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_TX_RETRIES);
|
|
|
}
|
|
|
|
|
|
- if (!(sinfo->filled & BIT(NL80211_STA_INFO_TX_FAILED))) {
|
|
|
+ if (!(sinfo->filled & BIT_ULL(NL80211_STA_INFO_TX_FAILED))) {
|
|
|
sinfo->tx_failed = sta->status_stats.retry_failed;
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_TX_FAILED);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_TX_FAILED);
|
|
|
}
|
|
|
|
|
|
sinfo->rx_dropped_misc = sta->rx_stats.dropped;
|
|
@@ -2195,23 +2195,23 @@ void sta_set_sinfo(struct sta_info *sta, struct station_info *sinfo,
|
|
|
|
|
|
if (sdata->vif.type == NL80211_IFTYPE_STATION &&
|
|
|
!(sdata->vif.driver_flags & IEEE80211_VIF_BEACON_FILTER)) {
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_BEACON_RX) |
|
|
|
- BIT(NL80211_STA_INFO_BEACON_SIGNAL_AVG);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_BEACON_RX) |
|
|
|
+ BIT_ULL(NL80211_STA_INFO_BEACON_SIGNAL_AVG);
|
|
|
sinfo->rx_beacon_signal_avg = ieee80211_ave_rssi(&sdata->vif);
|
|
|
}
|
|
|
|
|
|
if (ieee80211_hw_check(&sta->local->hw, SIGNAL_DBM) ||
|
|
|
ieee80211_hw_check(&sta->local->hw, SIGNAL_UNSPEC)) {
|
|
|
- if (!(sinfo->filled & BIT(NL80211_STA_INFO_SIGNAL))) {
|
|
|
+ if (!(sinfo->filled & BIT_ULL(NL80211_STA_INFO_SIGNAL))) {
|
|
|
sinfo->signal = (s8)last_rxstats->last_signal;
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_SIGNAL);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_SIGNAL);
|
|
|
}
|
|
|
|
|
|
if (!sta->pcpu_rx_stats &&
|
|
|
- !(sinfo->filled & BIT(NL80211_STA_INFO_SIGNAL_AVG))) {
|
|
|
+ !(sinfo->filled & BIT_ULL(NL80211_STA_INFO_SIGNAL_AVG))) {
|
|
|
sinfo->signal_avg =
|
|
|
-ewma_signal_read(&sta->rx_stats_avg.signal);
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_SIGNAL_AVG);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_SIGNAL_AVG);
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -2220,11 +2220,11 @@ void sta_set_sinfo(struct sta_info *sta, struct station_info *sinfo,
|
|
|
* pcpu statistics
|
|
|
*/
|
|
|
if (last_rxstats->chains &&
|
|
|
- !(sinfo->filled & (BIT(NL80211_STA_INFO_CHAIN_SIGNAL) |
|
|
|
- BIT(NL80211_STA_INFO_CHAIN_SIGNAL_AVG)))) {
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_CHAIN_SIGNAL);
|
|
|
+ !(sinfo->filled & (BIT_ULL(NL80211_STA_INFO_CHAIN_SIGNAL) |
|
|
|
+ BIT_ULL(NL80211_STA_INFO_CHAIN_SIGNAL_AVG)))) {
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_CHAIN_SIGNAL);
|
|
|
if (!sta->pcpu_rx_stats)
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_CHAIN_SIGNAL_AVG);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_CHAIN_SIGNAL_AVG);
|
|
|
|
|
|
sinfo->chains = last_rxstats->chains;
|
|
|
|
|
@@ -2236,15 +2236,15 @@ void sta_set_sinfo(struct sta_info *sta, struct station_info *sinfo,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if (!(sinfo->filled & BIT(NL80211_STA_INFO_TX_BITRATE))) {
|
|
|
+ if (!(sinfo->filled & BIT_ULL(NL80211_STA_INFO_TX_BITRATE))) {
|
|
|
sta_set_rate_info_tx(sta, &sta->tx_stats.last_rate,
|
|
|
&sinfo->txrate);
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_TX_BITRATE);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_TX_BITRATE);
|
|
|
}
|
|
|
|
|
|
- if (!(sinfo->filled & BIT(NL80211_STA_INFO_RX_BITRATE))) {
|
|
|
+ if (!(sinfo->filled & BIT_ULL(NL80211_STA_INFO_RX_BITRATE))) {
|
|
|
if (sta_set_rate_info_rx(sta, &sinfo->rxrate) == 0)
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_RX_BITRATE);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_RX_BITRATE);
|
|
|
}
|
|
|
|
|
|
if (tidstats && !cfg80211_sinfo_alloc_tid_stats(sinfo, GFP_KERNEL)) {
|
|
@@ -2257,18 +2257,18 @@ void sta_set_sinfo(struct sta_info *sta, struct station_info *sinfo,
|
|
|
|
|
|
if (ieee80211_vif_is_mesh(&sdata->vif)) {
|
|
|
#ifdef CONFIG_MAC80211_MESH
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_LLID) |
|
|
|
- BIT(NL80211_STA_INFO_PLID) |
|
|
|
- BIT(NL80211_STA_INFO_PLINK_STATE) |
|
|
|
- BIT(NL80211_STA_INFO_LOCAL_PM) |
|
|
|
- BIT(NL80211_STA_INFO_PEER_PM) |
|
|
|
- BIT(NL80211_STA_INFO_NONPEER_PM);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_LLID) |
|
|
|
+ BIT_ULL(NL80211_STA_INFO_PLID) |
|
|
|
+ BIT_ULL(NL80211_STA_INFO_PLINK_STATE) |
|
|
|
+ BIT_ULL(NL80211_STA_INFO_LOCAL_PM) |
|
|
|
+ BIT_ULL(NL80211_STA_INFO_PEER_PM) |
|
|
|
+ BIT_ULL(NL80211_STA_INFO_NONPEER_PM);
|
|
|
|
|
|
sinfo->llid = sta->mesh->llid;
|
|
|
sinfo->plid = sta->mesh->plid;
|
|
|
sinfo->plink_state = sta->mesh->plink_state;
|
|
|
if (test_sta_flag(sta, WLAN_STA_TOFFSET_KNOWN)) {
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_T_OFFSET);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_T_OFFSET);
|
|
|
sinfo->t_offset = sta->mesh->t_offset;
|
|
|
}
|
|
|
sinfo->local_pm = sta->mesh->local_pm;
|
|
@@ -2313,7 +2313,7 @@ void sta_set_sinfo(struct sta_info *sta, struct station_info *sinfo,
|
|
|
thr = sta_get_expected_throughput(sta);
|
|
|
|
|
|
if (thr != 0) {
|
|
|
- sinfo->filled |= BIT(NL80211_STA_INFO_EXPECTED_THROUGHPUT);
|
|
|
+ sinfo->filled |= BIT_ULL(NL80211_STA_INFO_EXPECTED_THROUGHPUT);
|
|
|
sinfo->expected_throughput = thr;
|
|
|
}
|
|
|
|