svn commit: r193415 - user/kmacy/releng_7_2_fcs/sys/dev/cxgb
Kip Macy
kmacy at FreeBSD.org
Wed Jun 3 23:47:44 UTC 2009
Author: kmacy
Date: Wed Jun 3 23:47:43 2009
New Revision: 193415
URL: http://svn.freebsd.org/changeset/base/193415
Log:
cleanup delayed reclaim handler
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 Wed Jun 3 23:33:09 2009 (r193414)
+++ user/kmacy/releng_7_2_fcs/sys/dev/cxgb/cxgb_sge.c Wed Jun 3 23:47:43 2009 (r193415)
@@ -873,23 +873,16 @@ refill_rspq(adapter_t *sc, const struct
V_RSPQ(q->cntxt_id) | V_CREDITS(credits));
}
-static __inline void
-sge_txq_reclaim_(struct sge_txq *txq, int force)
-{
-
- panic("unimplemented");
-}
-
static void
sge_txq_reclaim_handler(void *arg, int ncount)
{
- struct sge_txq *q = arg;
+ struct sge_qset *qs = arg;
+ int i;
- sge_txq_reclaim_(q, TRUE);
+ for (i = 0; i < 3; i++)
+ reclaim_completed_tx(qs, 16, i);
}
-
-
static void
sge_timer_reclaim(void *arg, int ncount)
{
@@ -897,7 +890,6 @@ sge_timer_reclaim(void *arg, int ncount)
int i, nqsets = pi->nqsets;
adapter_t *sc = pi->adapter;
struct sge_qset *qs;
- struct sge_txq *txq;
struct mtx *lock;
#ifdef IFNET_MULTIQUEUE
@@ -906,9 +898,7 @@ sge_timer_reclaim(void *arg, int ncount)
for (i = 0; i < nqsets; i++) {
qs = &sc->sge.qs[pi->first_qset + i];
- txq = &qs->txq[TXQ_OFLD];
- sge_txq_reclaim_(txq, FALSE);
-
+ reclaim_completed_tx(qs, 16, TXQ_OFLD);
lock = (sc->flags & USING_MSIX) ? &qs->rspq.lock :
&sc->sge.qs[0].rspq.lock;
@@ -2455,8 +2445,8 @@ t3_sge_alloc_qset(adapter_t *sc, u_int i
TASK_INIT(&q->txq[TXQ_OFLD].qresume_task, 0, restart_offloadq, q);
TASK_INIT(&q->txq[TXQ_CTRL].qresume_task, 0, restart_ctrlq, q);
- TASK_INIT(&q->txq[TXQ_ETH].qreclaim_task, 0, sge_txq_reclaim_handler, &q->txq[TXQ_ETH]);
- TASK_INIT(&q->txq[TXQ_OFLD].qreclaim_task, 0, sge_txq_reclaim_handler, &q->txq[TXQ_OFLD]);
+ TASK_INIT(&q->txq[TXQ_ETH].qreclaim_task, 0, sge_txq_reclaim_handler, q);
+ TASK_INIT(&q->txq[TXQ_OFLD].qreclaim_task, 0, sge_txq_reclaim_handler, q);
q->fl[0].gen = q->fl[1].gen = 1;
q->fl[0].size = p->fl_size;
More information about the svn-src-user
mailing list