Date: Thu, 8 Jul 2010 15:20:57 +0000 (UTC) From: Adrian Chadd <adrian@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r209809 - head/sys/mips/atheros Message-ID: <201007081520.o68FKvO9048818@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: adrian Date: Thu Jul 8 15:20:57 2010 New Revision: 209809 URL: http://svn.freebsd.org/changeset/base/209809 Log: Add TX-path aligned/unaligned stats for if_arge. Modified: head/sys/mips/atheros/if_arge.c head/sys/mips/atheros/if_argevar.h Modified: head/sys/mips/atheros/if_arge.c ============================================================================== --- head/sys/mips/atheros/if_arge.c Thu Jul 8 15:05:23 2010 (r209808) +++ head/sys/mips/atheros/if_arge.c Thu Jul 8 15:20:57 2010 (r209809) @@ -209,6 +209,14 @@ arge_attach_sysctl(device_t dev) SYSCTL_ADD_INT(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, "debug", CTLFLAG_RW, &sc->arge_debug, 0, "arge interface debugging flags"); + + SYSCTL_ADD_UINT(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, + "tx_pkts_aligned", CTLFLAG_RW, &sc->stats.tx_pkts_aligned, 0, + "number of TX aligned packets"); + + SYSCTL_ADD_UINT(ctx, SYSCTL_CHILDREN(tree), OID_AUTO, + "tx_pkts_unaligned", CTLFLAG_RW, &sc->stats.tx_pkts_unaligned, 0, + "number of TX unaligned packets"); } static int @@ -876,13 +884,15 @@ arge_encap(struct arge_softc *sc, struct */ m = *m_head; if (! arge_mbuf_chain_is_tx_aligned(m)) { + sc->stats.tx_pkts_unaligned++; m = m_defrag(*m_head, M_DONTWAIT); if (m == NULL) { *m_head = NULL; return (ENOBUFS); } *m_head = m; - } + } else + sc->stats.tx_pkts_aligned++; prod = sc->arge_cdata.arge_tx_prod; txd = &sc->arge_cdata.arge_txdesc[prod]; Modified: head/sys/mips/atheros/if_argevar.h ============================================================================== --- head/sys/mips/atheros/if_argevar.h Thu Jul 8 15:05:23 2010 (r209808) +++ head/sys/mips/atheros/if_argevar.h Thu Jul 8 15:20:57 2010 (r209809) @@ -155,6 +155,10 @@ struct arge_softc { uint32_t arge_pll_reg_shift; int arge_if_flags; uint32_t arge_debug; + struct { + uint32_t tx_pkts_unaligned; + uint32_t tx_pkts_aligned; + } stats; }; #endif /* __IF_ARGEVAR_H__ */
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201007081520.o68FKvO9048818>