Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 7 Jun 2009 01:02:33 +0000 (UTC)
From:      Kip Macy <kmacy@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r193602 - user/kmacy/releng_7_2_fcs/sys/dev/cxgb
Message-ID:  <200906070102.n5712XF3077090@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kmacy
Date: Sun Jun  7 01:02:33 2009
New Revision: 193602
URL: http://svn.freebsd.org/changeset/base/193602

Log:
  always enqueue a timeout if the ring is not empty

Modified:
  user/kmacy/releng_7_2_fcs/sys/dev/cxgb/cxgb_sge.c

Modified: user/kmacy/releng_7_2_fcs/sys/dev/cxgb/cxgb_sge.c
==============================================================================
--- user/kmacy/releng_7_2_fcs/sys/dev/cxgb/cxgb_sge.c	Sun Jun  7 00:52:02 2009	(r193601)
+++ user/kmacy/releng_7_2_fcs/sys/dev/cxgb/cxgb_sge.c	Sun Jun  7 01:02:33 2009	(r193602)
@@ -1612,7 +1612,9 @@ cxgb_start_locked(struct sge_qset *qs)
 		/* Set timeout in case hardware has problems transmitting. */
 		pi->watchdog_timer = CXGB_TX_TIMEOUT;
 	}
-
+	if (!TXQ_RING_EMPTY(qs) && callout_pending(&txq->txq_timer) == 0)
+		callout_reset_on(&txq->txq_timer, 1, cxgb_tx_timeout,
+		    qs, txq->txq_timer.c_cpu);
 	if (m_head != NULL)
 		m_freem(m_head);
 }
@@ -1669,8 +1671,7 @@ cxgb_transmit_locked(struct ifnet *ifp, 
 	if (!TXQ_RING_EMPTY(qs) && pi->link_config.link_ok &&
 	    (!sc->tunq_coalesce || (drbr_inuse(ifp, br) >= 7)))
 		cxgb_start_locked(qs);
-	else if (!TXQ_RING_EMPTY(qs) && sc->tunq_coalesce &&
-	    callout_pending(&txq->txq_timer) == 0)
+	else if (!TXQ_RING_EMPTY(qs) && callout_pending(&txq->txq_timer) == 0)
 		callout_reset_on(&txq->txq_timer, 1, cxgb_tx_timeout,
 		    qs, txq->txq_timer.c_cpu);
 	return (0);



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