Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Dec 2009 19:18:02 +0000 (UTC)
From:      Gavin Atkinson <gavin@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r200530 - head/sys/dev/wpi
Message-ID:  <200912141918.nBEJI2AS035666@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: gavin
Date: Mon Dec 14 19:18:02 2009
New Revision: 200530
URL: http://svn.freebsd.org/changeset/base/200530

Log:
  Don't panic on failure to attach if we fail before or during the
  if_alloc() of ifp.  This fixes the panic reported in the PR, but
  not the attach failure.
  
  PR:		kern/139079
  Tested by:      Steven Noonan <steven uplinklabs.net>
  Reviewed by:	thompsa
  Approved by:	ed (mentor)
  MFC after:	2 weeks`

Modified:
  head/sys/dev/wpi/if_wpi.c

Modified: head/sys/dev/wpi/if_wpi.c
==============================================================================
--- head/sys/dev/wpi/if_wpi.c	Mon Dec 14 19:08:11 2009	(r200529)
+++ head/sys/dev/wpi/if_wpi.c	Mon Dec 14 19:18:02 2009	(r200530)
@@ -713,13 +713,14 @@ wpi_detach(device_t dev)
 {
 	struct wpi_softc *sc = device_get_softc(dev);
 	struct ifnet *ifp = sc->sc_ifp;
-	struct ieee80211com *ic = ifp->if_l2com;
+	struct ieee80211com *ic;
 	int ac;
 
-	ieee80211_draintask(ic, &sc->sc_restarttask);
-	ieee80211_draintask(ic, &sc->sc_radiotask);
-
 	if (ifp != NULL) {
+		ic = ifp->if_l2com;
+
+		ieee80211_draintask(ic, &sc->sc_restarttask);
+		ieee80211_draintask(ic, &sc->sc_radiotask);
 		wpi_stop(sc);
 		callout_drain(&sc->watchdog_to);
 		callout_drain(&sc->calib_to);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200912141918.nBEJI2AS035666>