Date: Sat, 22 Nov 2008 00:24:23 +0000 (UTC) From: Kip Macy <kmacy@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r185159 - user/kmacy/HEAD_fast_multi_xmit/sys/dev/cxgb Message-ID: <200811220024.mAM0ONho000634@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: kmacy Date: Sat Nov 22 00:24:23 2008 New Revision: 185159 URL: http://svn.freebsd.org/changeset/base/185159 Log: although it ends up sucking up substantially more cpu waking up the transmit thread gives slightly better peak throughput Modified: user/kmacy/HEAD_fast_multi_xmit/sys/dev/cxgb/cxgb_multiq.c user/kmacy/HEAD_fast_multi_xmit/sys/dev/cxgb/cxgb_sge.c Modified: user/kmacy/HEAD_fast_multi_xmit/sys/dev/cxgb/cxgb_multiq.c ============================================================================== --- user/kmacy/HEAD_fast_multi_xmit/sys/dev/cxgb/cxgb_multiq.c Fri Nov 21 23:59:54 2008 (r185158) +++ user/kmacy/HEAD_fast_multi_xmit/sys/dev/cxgb/cxgb_multiq.c Sat Nov 22 00:24:23 2008 (r185159) @@ -89,6 +89,7 @@ __FBSDID("$FreeBSD$"); extern int txq_fills; int multiq_tx_enable = 1; int coalesce_tx_enable = 0; +int wakeup_tx_thread = 0; extern struct sysctl_oid_list sysctl__hw_cxgb_children; static int sleep_ticks = 1; @@ -127,6 +128,9 @@ cxgb_pcpu_enqueue_packet_(struct sge_qse txq->txq_drops++; m_freem(m); } + if (wakeup_tx_thread && ((txq->flags & TXQ_TRANSMITTING) == 0)) + wakeup(qs); + return (err); } Modified: user/kmacy/HEAD_fast_multi_xmit/sys/dev/cxgb/cxgb_sge.c ============================================================================== --- user/kmacy/HEAD_fast_multi_xmit/sys/dev/cxgb/cxgb_sge.c Fri Nov 21 23:59:54 2008 (r185158) +++ user/kmacy/HEAD_fast_multi_xmit/sys/dev/cxgb/cxgb_sge.c Sat Nov 22 00:24:23 2008 (r185159) @@ -86,6 +86,7 @@ extern int nmbjumbo9; extern int nmbjumbo16; extern int multiq_tx_enable; extern int coalesce_tx_enable; +extern int wakeup_tx_thread; #define USE_GTS 0 @@ -3377,6 +3378,10 @@ t3_add_attach_sysctls(adapter_t *sc) CTLFLAG_RW, &coalesce_tx_enable, 0, "coalesce small packets in work requests - WARNING ALPHA"); SYSCTL_ADD_INT(ctx, children, OID_AUTO, + "wakeup_tx_thread", + CTLFLAG_RW, &wakeup_tx_thread, + 0, "wakeup tx thread if no transmitter running"); + SYSCTL_ADD_INT(ctx, children, OID_AUTO, "cache_alloc", CTLFLAG_RD, &cxgb_cached_allocations, 0, "#times a cluster was allocated from cache");
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200811220024.mAM0ONho000634>