if: Move IFF_OACTIVE bit into ifaltq; prepare multiple TX queues support
[dragonfly.git] / sys / dev / netif / iwi / if_iwi.c
index 8876bf7..f351b91 100644 (file)
@@ -1610,7 +1610,7 @@ iwi_tx_intr(struct iwi_softc *sc, struct iwi_tx_ring *txq)
        }
 
        sc->sc_tx_timer = 0;
-       ifp->if_flags &= ~IFF_OACTIVE;
+       ifq_clr_oactive(&ifp->if_snd);
 
        if (sc->sc_softled)
                iwi_led_event(sc, IWI_LED_TX);
@@ -1943,7 +1943,7 @@ iwi_start_locked(struct ifnet *ifp)
                        /* there is no place left in this ring; tail drop */
                        /* XXX tail drop */
                        IF_PREPEND(&ifp->if_snd, m);
-                       ifp->if_flags |= IFF_OACTIVE;
+                       ifq_set_oactive(&ifp->if_snd);
                        break;
                }
 
@@ -3111,7 +3111,7 @@ iwi_init_locked(struct iwi_softc *sc)
        }
 
        callout_reset(&sc->sc_wdtimer_callout, hz, iwi_watchdog, sc);
-       ifp->if_flags &= ~IFF_OACTIVE;
+       ifq_clr_oactive(&ifp->if_snd);
        ifp->if_flags |= IFF_RUNNING;
        return;
 fail:
@@ -3139,7 +3139,8 @@ iwi_stop_locked(void *priv)
        struct iwi_softc *sc = priv;
        struct ifnet *ifp = sc->sc_ifp;
 
-       ifp->if_flags &= ~(IFF_RUNNING | IFF_OACTIVE);
+       ifp->if_flags &= ~IFF_RUNNING;
+       ifq_clr_oactive(&ifp->if_snd);
 
        if (sc->sc_softled) {
                callout_stop(&sc->sc_ledtimer_callout);