hyperv/hn: Use taskqueue_enqueue()

This also eases experiment on the non-fast taskqueue.

Reviewed by:	adrian, Jun Su <junsu microsoft com>
Approved by:	adrian (mentor)
MFC after:	1 week
Sponsored by:	Microsoft OSTC
Differential Revision:	https://reviews.freebsd.org/D5276
This commit is contained in:
Sepherosa Ziehau 2016-02-18 07:23:05 +00:00
parent 17ab6c4f17
commit 4d8e8cb113

View file

@ -1549,7 +1549,7 @@ hn_start(struct ifnet *ifp)
return;
}
do_sched:
taskqueue_enqueue_fast(sc->hn_tx_taskq, &sc->hn_start_task);
taskqueue_enqueue(sc->hn_tx_taskq, &sc->hn_start_task);
}
static void
@ -1566,10 +1566,8 @@ hn_start_txeof(struct ifnet *ifp)
atomic_clear_int(&ifp->if_drv_flags, IFF_DRV_OACTIVE);
sched = hn_start_locked(ifp, sc->hn_direct_tx_size);
NV_UNLOCK(sc);
if (sched) {
taskqueue_enqueue_fast(sc->hn_tx_taskq,
&sc->hn_start_task);
}
if (sched)
taskqueue_enqueue(sc->hn_tx_taskq, &sc->hn_start_task);
} else {
do_sched:
/*
@ -1579,7 +1577,7 @@ do_sched:
* races.
*/
atomic_clear_int(&ifp->if_drv_flags, IFF_DRV_OACTIVE);
taskqueue_enqueue_fast(sc->hn_tx_taskq, &sc->hn_txeof_task);
taskqueue_enqueue(sc->hn_tx_taskq, &sc->hn_txeof_task);
}
}