Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 21 Nov 2008 23:59:54 +0000 (UTC)
From:      Kip Macy <kmacy@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r185158 - user/kmacy/HEAD_fast_multi_xmit/sys/dev/cxgb
Message-ID:  <200811212359.mALNxs5x099998@svn.freebsd.org>

index | next in thread | raw e-mail

Author: kmacy
Date: Fri Nov 21 23:59:54 2008
New Revision: 185158
URL: http://svn.freebsd.org/changeset/base/185158

Log:
  - Dramatically reduce the number of context switches by not calling wakeup
  In practice the worst case extra millisecond we wait for the service thread
  to push out stragglers rarely hurts.

Modified:
  user/kmacy/HEAD_fast_multi_xmit/sys/dev/cxgb/cxgb_multiq.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 19:22:25 2008	(r185157)
+++ user/kmacy/HEAD_fast_multi_xmit/sys/dev/cxgb/cxgb_multiq.c	Fri Nov 21 23:59:54 2008	(r185158)
@@ -127,9 +127,6 @@ cxgb_pcpu_enqueue_packet_(struct sge_qse
 		txq->txq_drops++;
 		m_freem(m);
 	}
-	if ((qs->txq[TXQ_ETH].flags & TXQ_TRANSMITTING) == 0)
-		wakeup(qs);
-
 	return (err);
 }
 
@@ -415,10 +412,6 @@ cxgb_pcpu_transmit(struct ifnet *ifp, st
 			    sc->tunq_coalesce, buf_ring_count(txq->txq_mr), mtx_owned(&txq->lock));
 		err = cxgb_pcpu_enqueue_packet_(qs, immpkt);
 	}
-	
-	if (resid && (txq->flags & TXQ_TRANSMITTING) == 0)
-		wakeup(qs);
-
 	return ((err == ENOSPC) ? 0 : err);
 }
 


help

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200811212359.mALNxs5x099998>