svn commit: r185159 - user/kmacy/HEAD_fast_multi_xmit/sys/dev/cxgb
Kip Macy
kmacy at FreeBSD.org
Fri Nov 21 16:24:23 PST 2008
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");
More information about the svn-src-user
mailing list