Author: gavin
Date: Sat Nov 12 18:33:56 2016
New Revision: 308577
URL: https://svnweb.freebsd.org/changeset/base/308577

Log:
  iwm: If firmware load fails during init via iwm_preinit() we bail out
  before calling ieee80211_ifattach() so the taskqueue hasn't been
  initialized. Don't try to drain it, we'll panic.
  Looks like this issue was introduced in r303326.
  
  Reviewed by:  avos, sbruno, adrian
  Differential Revision:        https://reviews.freebsd.org/D8499

Modified:
  head/sys/dev/iwm/if_iwm.c

Modified: head/sys/dev/iwm/if_iwm.c
==============================================================================
--- head/sys/dev/iwm/if_iwm.c   Sat Nov 12 18:04:03 2016        (r308576)
+++ head/sys/dev/iwm/if_iwm.c   Sat Nov 12 18:33:56 2016        (r308577)
@@ -6192,7 +6192,8 @@ iwm_detach_local(struct iwm_softc *sc, i
        device_t dev = sc->sc_dev;
        int i;
 
-       ieee80211_draintask(&sc->sc_ic, &sc->sc_es_task);
+       if (do_net80211)
+               ieee80211_draintask(&sc->sc_ic, &sc->sc_es_task);
 
        callout_drain(&sc->sc_led_blink_to);
        callout_drain(&sc->sc_watchdog_to);
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to