Date: Tue, 30 Aug 2011 04:32:16 +0000 (UTC) From: Adrian Chadd <adrian@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r225258 - user/adrian/if_ath_tx/sys/dev/ath Message-ID: <201108300432.p7U4WGbm032582@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: adrian Date: Tue Aug 30 04:32:16 2011 New Revision: 225258 URL: http://svn.freebsd.org/changeset/base/225258 Log: * correctly bump the max sw retry counter on failed aggregate frames * add a new field which increments when an whole aggregate frame fails to TX Modified: user/adrian/if_ath_tx/sys/dev/ath/if_ath_sysctl.c user/adrian/if_ath_tx/sys/dev/ath/if_ath_tx.c user/adrian/if_ath_tx/sys/dev/ath/if_athioctl.h Modified: user/adrian/if_ath_tx/sys/dev/ath/if_ath_sysctl.c ============================================================================== --- user/adrian/if_ath_tx/sys/dev/ath/if_ath_sysctl.c Tue Aug 30 04:30:41 2011 (r225257) +++ user/adrian/if_ath_tx/sys/dev/ath/if_ath_sysctl.c Tue Aug 30 04:32:16 2011 (r225258) @@ -809,6 +809,9 @@ ath_sysctl_stats_attach(struct ath_softc &sc->sc_stats.ast_tx_data_underrun, 0, ""); SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "ast_tx_delim_underrun", CTLFLAG_RD, &sc->sc_stats.ast_tx_delim_underrun, 0, ""); + SYSCTL_ADD_UINT(ctx, child, OID_AUTO, "ast_tx_aggrfail", CTLFLAG_RD, + &sc->sc_stats.ast_tx_aggrfail, 0, + "Number of aggregate TX failures (whole frame)"); /* Attach the RX phy error array */ ath_sysctl_stats_attach_rxphyerr(sc, child); Modified: user/adrian/if_ath_tx/sys/dev/ath/if_ath_tx.c ============================================================================== --- user/adrian/if_ath_tx/sys/dev/ath/if_ath_tx.c Tue Aug 30 04:30:41 2011 (r225257) +++ user/adrian/if_ath_tx/sys/dev/ath/if_ath_tx.c Tue Aug 30 04:32:16 2011 (r225258) @@ -2644,6 +2644,7 @@ ath_tx_retry_subframe(struct ath_softc * } if (bf->bf_state.bfs_retries >= SWMAX_RETRIES) { + sc->sc_stats.ast_tx_swretrymax++; DPRINTF(sc, ATH_DEBUG_SW_TX_RETRIES, "%s: max retries: seqno %d\n", __func__, SEQNO(bf->bf_state.bfs_seqno)); @@ -2685,6 +2686,7 @@ ath_tx_comp_aggr_error(struct ath_softc tap = ath_tx_get_tx_tid(an, tid->tid); TAILQ_INIT(&bf_q); + sc->sc_stats.ast_tx_aggrfail++; /* * Update rate control - all frames have failed. Modified: user/adrian/if_ath_tx/sys/dev/ath/if_athioctl.h ============================================================================== --- user/adrian/if_ath_tx/sys/dev/ath/if_athioctl.h Tue Aug 30 04:30:41 2011 (r225257) +++ user/adrian/if_ath_tx/sys/dev/ath/if_athioctl.h Tue Aug 30 04:32:16 2011 (r225258) @@ -146,6 +146,7 @@ struct ath_stats { u_int32_t ast_tx_swretrymax; /* software TX retry max limit reach */ u_int32_t ast_tx_data_underrun; u_int32_t ast_tx_delim_underrun; + u_int32_t ast_tx_aggrfail; /* aggregate TX failed in its entirety */ struct ath_tx_aggr_stats tx_aggr; u_int32_t ast_pad[9]; };
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201108300432.p7U4WGbm032582>