svn commit: r193602 - user/kmacy/releng_7_2_fcs/sys/dev/cxgb
Kip Macy
kmacy at FreeBSD.org
Sun Jun 7 01:02:33 UTC 2009
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);
More information about the svn-src-user
mailing list