summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsam <sam@FreeBSD.org>2007-11-16 15:51:47 +0000
committersam <sam@FreeBSD.org>2007-11-16 15:51:47 +0000
commit8c5faca0dcd1324f05dc9dae4fd2f16203aa63f8 (patch)
tree245215167b7e4bd360fbce2b14096b3038193582
parentfa5e7c42160a8e6ff1792ae29f017228e8a24df2 (diff)
downloadFreeBSD-src-8c5faca0dcd1324f05dc9dae4fd2f16203aa63f8.zip
FreeBSD-src-8c5faca0dcd1324f05dc9dae4fd2f16203aa63f8.tar.gz
use the private task q thread instead of the shared system thread
Reviewed by: yongari MFC after: 1 week
-rw-r--r--sys/dev/nfe/if_nfe.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/sys/dev/nfe/if_nfe.c b/sys/dev/nfe/if_nfe.c
index 3663133..d76ff57 100644
--- a/sys/dev/nfe/if_nfe.c
+++ b/sys/dev/nfe/if_nfe.c
@@ -1689,7 +1689,7 @@ nfe_poll(struct ifnet *ifp, enum poll_cmd cmd, int count)
nfe_rxeof(sc, count);
nfe_txeof(sc);
if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd))
- taskqueue_enqueue_fast(taskqueue_fast, &sc->nfe_tx_task);
+ taskqueue_enqueue_fast(sc->nfe_tq, &sc->nfe_tx_task);
if (cmd == POLL_AND_CHECK_STATUS) {
if ((r = NFE_READ(sc, sc->nfe_irq_status)) == 0) {
@@ -1898,7 +1898,7 @@ nfe_intr(void *arg)
if (status == 0 || status == 0xffffffff)
return (FILTER_STRAY);
nfe_disable_intr(sc);
- taskqueue_enqueue_fast(taskqueue_fast, &sc->nfe_int_task);
+ taskqueue_enqueue_fast(sc->nfe_tq, &sc->nfe_int_task);
return (FILTER_HANDLED);
}
@@ -1952,12 +1952,12 @@ nfe_int_task(void *arg, int pending)
nfe_txeof(sc);
if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd))
- taskqueue_enqueue_fast(taskqueue_fast, &sc->nfe_tx_task);
+ taskqueue_enqueue_fast(sc->nfe_tq, &sc->nfe_tx_task);
NFE_UNLOCK(sc);
if (domore || (NFE_READ(sc, sc->nfe_irq_status) != 0)) {
- taskqueue_enqueue_fast(taskqueue_fast, &sc->nfe_int_task);
+ taskqueue_enqueue_fast(sc->nfe_tq, &sc->nfe_int_task);
return;
}
@@ -2808,8 +2808,7 @@ nfe_watchdog(struct ifnet *ifp)
if_printf(ifp, "watchdog timeout (missed Tx interrupts) "
"-- recovering\n");
if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd))
- taskqueue_enqueue_fast(taskqueue_fast,
- &sc->nfe_tx_task);
+ taskqueue_enqueue_fast(sc->nfe_tq, &sc->nfe_tx_task);
return;
}
/* Check if we've lost start Tx command. */
OpenPOWER on IntegriCloud