move taskqueue_enqueue of tx clean operation out of the start path

This commit is contained in:
kmacy 2007-03-14 06:34:10 +00:00
parent 9273d036f8
commit d784e1ab37

View File

@ -1309,12 +1309,9 @@ cxgb_start_proc(void *arg, int ncount)
qs = &pi->adapter->sge.qs[pi->first_qset];
txq = &qs->txq[TXQ_ETH];
while (error == 0) {
if (desc_reclaimable(txq) > TX_START_MAX_DESC)
taskqueue_enqueue(pi->adapter->tq, &pi->adapter->timer_reclaim_task);
while (error == 0)
error = cxgb_start_tx(ifp, TX_MAX_DESC + 1);
}
}
static void
@ -1328,9 +1325,6 @@ cxgb_start(struct ifnet *ifp)
qs = &pi->adapter->sge.qs[pi->first_qset];
txq = &qs->txq[TXQ_ETH];
if (desc_reclaimable(txq) > TX_START_MAX_DESC)
taskqueue_enqueue(pi->adapter->tq, &pi->adapter->timer_reclaim_task);
err = cxgb_start_tx(ifp, TX_START_MAX_DESC);
if (err == 0)