git: 00ad581c7e3f - main - wlanstats: add GCMP crypto counters
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 13 Mar 2025 00:14:21 UTC
The branch main has been updated by adrian:
URL: https://cgit.FreeBSD.org/src/commit/?id=00ad581c7e3f6d6a793bafdbe83c53d48155be58
commit 00ad581c7e3f6d6a793bafdbe83c53d48155be58
Author: Adrian Chadd <adrian@FreeBSD.org>
AuthorDate: 2025-02-28 03:24:28 +0000
Commit: Adrian Chadd <adrian@FreeBSD.org>
CommitDate: 2025-03-13 00:02:36 +0000
wlanstats: add GCMP crypto counters
Add GCMP crypto counters to wlanstats.
Differential Revision: https://reviews.freebsd.org/D49162
---
usr.sbin/wlanstats/wlanstats.c | 24 ++++++++++++++++++++++++
1 file changed, 24 insertions(+)
diff --git a/usr.sbin/wlanstats/wlanstats.c b/usr.sbin/wlanstats/wlanstats.c
index 8795333ccb17..588b67ddd417 100644
--- a/usr.sbin/wlanstats/wlanstats.c
+++ b/usr.sbin/wlanstats/wlanstats.c
@@ -382,6 +382,18 @@ static const struct fmt wlanstats[] = {
{ 9, "ampdu_bartxfail", "bartx_fail", "BAR frames failed to send" },
#define S_AMPDU_BARTX_RETRY AFTER(S_AMPDU_BARTX_FAIL)
{ 10, "ampdu_bartxretry", "bartx_retry", "BAR frames retried" },
+#define S_CRYPTO_GCMP AFTER(S_AMPDU_BARTX_RETRY)
+ { 11, "crypto_gcmp", "crypto_gcmp", "gcmp crypto done in s/w" },
+#define S_RX_GCMPREPLAY AFTER(S_CRYPTO_GCMP)
+ { 10, "rx_gcmpreplay", "gcmpreplay", "rx seq# violation (GCMP)" },
+#define S_RX_GCMPFORMAT AFTER(S_RX_GCMPREPLAY)
+ { 10, "rx_gcmpformat", "gcmpformat", "rx format bad (GCMP)" },
+#define S_RX_GCMPMIC AFTER(S_RX_GCMPFORMAT)
+ { 7, "rx_gcmpmic", "gcmpmic", "rx MIC check failed (GCMP)" },
+#define S_RX_GCMPNOMEM AFTER(S_RX_GCMPMIC)
+ { 9, "gcmp_nomem", "gcmpnomem", "No memory available (GCMP)" },
+#define S_RX_GCMPNOSPC AFTER(S_RX_GCMPNOMEM)
+ { 9, "gcmp_nospc", "gcmpnospc", "No mbuf space available (GCMP)" },
};
struct wlanstatfoo_p {
@@ -830,6 +842,12 @@ wlan_get_curstat(struct bsdstat *sf, int s, char b[], size_t bs)
case S_AMPDU_BARTX: STAT(ampdu_bar_tx);
case S_AMPDU_BARTX_RETRY: STAT(ampdu_bar_tx_retry);
case S_AMPDU_BARTX_FAIL: STAT(ampdu_bar_tx_fail);
+ case S_CRYPTO_GCMP: STAT(crypto_gcmp);
+ case S_RX_GCMPREPLAY: STAT(rx_gcmpreplay);
+ case S_RX_GCMPFORMAT: STAT(rx_gcmpformat);
+ case S_RX_GCMPMIC: STAT(rx_gcmpmic);
+ case S_RX_GCMPNOMEM: STAT(crypto_gcmp_nomem);
+ case S_RX_GCMPNOSPC: STAT(crypto_gcmp_nospc);
}
return wlan_getinfo(wf, s, b, bs);
#undef NSTAT
@@ -995,6 +1013,12 @@ wlan_get_totstat(struct bsdstat *sf, int s, char b[], size_t bs)
case S_AMPDU_BARTX: STAT(ampdu_bar_tx);
case S_AMPDU_BARTX_RETRY: STAT(ampdu_bar_tx_retry);
case S_AMPDU_BARTX_FAIL: STAT(ampdu_bar_tx_fail);
+ case S_CRYPTO_GCMP: STAT(crypto_gcmp);
+ case S_RX_GCMPREPLAY: STAT(rx_gcmpreplay);
+ case S_RX_GCMPFORMAT: STAT(rx_gcmpformat);
+ case S_RX_GCMPMIC: STAT(rx_gcmpmic);
+ case S_RX_GCMPNOMEM: STAT(crypto_gcmp_nomem);
+ case S_RX_GCMPNOSPC: STAT(crypto_gcmp_nospc);
}
return wlan_getinfo(wf, s, b, bs);
#undef NSTAT