Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src-draft/trunk]: src/sbin/ifconfig Add support for new elements in wifi sta...
details: https://anonhg.NetBSD.org/src-all/rev/c395e20f1148
branches: trunk
changeset: 371013:c395e20f1148
user: Martin Husemann <martin%NetBSD.org@localhost>
date: Sat Dec 19 19:14:55 2020 +0100
description:
Add support for new elements in wifi statistics
diffstat:
sbin/ifconfig/ieee80211.c | 70 ++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 69 insertions(+), 1 deletions(-)
diffs (94 lines):
diff -r 8ac345420691 -r c395e20f1148 sbin/ifconfig/ieee80211.c
--- a/sbin/ifconfig/ieee80211.c Sat Dec 19 18:51:21 2020 +0100
+++ b/sbin/ifconfig/ieee80211.c Sat Dec 19 19:14:55 2020 +0100
@@ -602,6 +602,8 @@
return;
#define STAT_PRINT(_member, _desc) \
printf("\t" _desc ": %" PRIu32 "\n", stats._member)
+#define STAT_PRINT8(_member, _desc) \
+ printf("\t" _desc ": %" PRIu8 "\n", stats._member)
STAT_PRINT(is_rx_badversion, "rx frame with bad version");
STAT_PRINT(is_rx_tooshort, "rx frame too short");
@@ -615,7 +617,7 @@
STAT_PRINT(is_rx_wepfail, "rx wep processing failed");
STAT_PRINT(is_rx_decap, "rx decapsulation failed");
STAT_PRINT(is_rx_mgtdiscard, "rx discard mgt frames");
- STAT_PRINT(is_rx_ctl, "rx discard ctrl frames");
+ STAT_PRINT(is_rx_ctl, "rx ctrl frames");
STAT_PRINT(is_rx_beacon, "rx beacon frames");
STAT_PRINT(is_rx_rstoobig, "rx rate set truncated");
STAT_PRINT(is_rx_elem_missing, "rx required element missing");
@@ -693,6 +695,72 @@
STAT_PRINT(is_ff_decap, "fast frames decap'd");
STAT_PRINT(is_ff_encap, "fast frames encap'd for tx");
STAT_PRINT(is_rx_badbintval, "rx frame w/ bogus bintval");
+ STAT_PRINT(is_rx_demicfail, "rx demic failed");
+ STAT_PRINT(is_rx_defrag, "rx defragmentation failed");
+ STAT_PRINT(is_rx_mgmt, "rx management frames");
+ STAT_PRINT(is_rx_action, "rx action mgt frames");
+ STAT_PRINT(is_amsdu_tooshort, "A-MSDU rx decap error");
+ STAT_PRINT(is_amsdu_split, "A-MSDU rx split error");
+ STAT_PRINT(is_amsdu_decap, "A-MSDU decap'd");
+ STAT_PRINT(is_amsdu_encap, "A-MSDU encap'd for tx");
+ STAT_PRINT(is_ampdu_bar_bad, "A-MPDU BAR out of window");
+ STAT_PRINT(is_ampdu_bar_oow, "A-MPDU BAR before ADDBA");
+ STAT_PRINT(is_ampdu_bar_move, "A-MPDU BAR moved window");
+ STAT_PRINT(is_ampdu_bar_rx, "A-MPDU BAR frames handled");
+ STAT_PRINT(is_ampdu_rx_flush, "A-MPDU frames flushed");
+ STAT_PRINT(is_ampdu_rx_oor, "A-MPDU frames out-of-order");
+ STAT_PRINT(is_ampdu_rx_copy, "A-MPDU frames copied down");
+ STAT_PRINT(is_ampdu_rx_drop, "A-MPDU frames dropped");
+ STAT_PRINT(is_tx_badstate, "tx discard state != RUN");
+ STAT_PRINT(is_tx_notassoc, "tx failed, sta not assoc");
+ STAT_PRINT(is_tx_classify, "tx classification failed");
+ STAT_PRINT(is_dwds_mcast, "discard mcast over dwds");
+ STAT_PRINT(is_dwds_qdrop, "dwds pending frame q full");
+ STAT_PRINT(is_ht_assoc_nohtcap, "non-HT sta rejected");
+ STAT_PRINT(is_ht_assoc_downgrade, "HT sta forced to legacy");
+ STAT_PRINT(is_ht_assoc_norate, "HT assoc w/ rate mismatch");
+ STAT_PRINT(is_ampdu_rx_age, "A-MPDU sent up 'cuz of age");
+ STAT_PRINT(is_ampdu_rx_move, "A-MPDU MSDU moved window");
+ STAT_PRINT(is_addba_reject, "ADDBA reject 'cuz disabled");
+ STAT_PRINT(is_addba_norequest, "ADDBA response w/o ADDBA");
+ STAT_PRINT(is_addba_badtoken, "ADDBA response w/ wrong dialogtoken");
+ STAT_PRINT(is_addba_badpolicy, "ADDBA resp w/ wrong policy");
+ STAT_PRINT(is_ampdu_stop, "A-MPDU stream stopped");
+ STAT_PRINT(is_ampdu_stop_failed, "A-MPDU stream not running");
+ STAT_PRINT(is_ampdu_rx_reorder, "A-MPDU held for rx reorder");
+ STAT_PRINT(is_scan_bg, "background scans started");
+
+ STAT_PRINT8(is_rx_deauth_code, "last rx'd deauth reason");
+ STAT_PRINT8(is_rx_disassoc_code, "last rx'd disassoc reason");
+ STAT_PRINT8(is_rx_authfail_code, "last rx'd auth fail reason");
+
+ STAT_PRINT(is_beacon_miss, "beacon miss notification");
+ STAT_PRINT(is_rx_badstate, "rx discard state != RUN");
+ STAT_PRINT(is_ff_flush, "ff's flush'd from stageq");
+ STAT_PRINT(is_tx_ctl, "tx ctrl frames");
+ STAT_PRINT(is_ampdu_rexmt, "A-MPDU frames rexmt ok");
+ STAT_PRINT(is_ampdu_rexmt_fail, "A-MPDU frames rexmt fail");
+ STAT_PRINT(is_mesh_wrongmesh, "dropped 'cuz not mesh st");
+ STAT_PRINT(is_mesh_nolink, "dropped 'cuz link not esta");
+ STAT_PRINT(is_mesh_fwd_ttl, "mesh not fwd'd 'cuz ttl 0");
+ STAT_PRINT(is_mesh_fwd_nobuf, "mesh not fwd'd 'cuz no mbu");
+ STAT_PRINT(is_mesh_fwd_tooshort, "mesh not fwd'd 'cuz no hdr");
+ STAT_PRINT(is_mesh_fwd_disabled, "mesh not fwd'd 'cuz disabled");
+ STAT_PRINT(is_mesh_fwd_nopath, "mesh not fwd'd 'cuz path unknown");
+ STAT_PRINT(is_hwmp_wrongseq, "wrong hwmp seq no.");
+ STAT_PRINT(is_hwmp_rootreqs, "root PREQs sent");
+ STAT_PRINT(is_hwmp_rootrann, "root RANNs sent");
+ STAT_PRINT(is_mesh_badae, "dropped 'cuz invalid AE");
+ STAT_PRINT(is_mesh_rtaddfailed, "route add failed");
+ STAT_PRINT(is_mesh_notproxy, "dropped 'cuz not proxying");
+ STAT_PRINT(is_rx_badalign, "dropped 'cuz misaligned");
+ STAT_PRINT(is_hwmp_proxy, "PREP for proxy route");
+ STAT_PRINT(is_beacon_bad, "Number of bad beacons");
+ STAT_PRINT(is_ampdu_bar_tx, "A-MPDU BAR frames TXed");
+ STAT_PRINT(is_ampdu_bar_tx_retry, "A-MPDU BAR frames TX rtry");
+ STAT_PRINT(is_ampdu_bar_tx_fail, "A-MPDU BAR frames TX fail");
+ STAT_PRINT(is_ff_encapfail, "failed FF encap");
+ STAT_PRINT(is_amsdu_encapfail, "failed A-MSDU encap");
#endif
}
Home |
Main Index |
Thread Index |
Old Index