panic: sleeping thread owns a mutex

John Baldwin jhb at FreeBSD.org
Mon Apr 28 13:49:42 PDT 2003


On 26-Apr-2003 AIDA Shinra wrote:
> My kernel always panics when I remove my wi pccard (WLI-PCM-S11).
> I am using OLDCARD and enabling hw.pcic.intr_path=1. With NEWCARD no
> cards work. I reported this bug 2 weeks ago but even today's kernel
> panics in exactly the same way. Anyone experiencing the same problem?
> Or just my misconfiguration?

Can you try this patch:

Index: if_wi.c
===================================================================
RCS file: /usr/cvs/src/sys/dev/wi/if_wi.c,v
retrieving revision 1.137
diff -u -r1.137 if_wi.c
--- if_wi.c     10 Apr 2003 07:55:55 -0000      1.137
+++ if_wi.c     28 Apr 2003 20:39:37 -0000
@@ -486,10 +486,10 @@
        ifmedia_removeall(&sc->sc_media);
 
        ieee80211_ifdetach(ifp);
+       WI_UNLOCK(sc);
        bus_teardown_intr(dev, sc->irq, sc->wi_intrhand);
        wi_free(dev);
 
-       WI_UNLOCK(sc);
 #if __FreeBSD_version >= 500000
        mtx_destroy(&sc->sc_mtx);
 #endif

It is not ok to hold a lock when calling bus_teardown_intr() or
bus_setup_intr().

-- 

John Baldwin <jhb at FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/


More information about the freebsd-current mailing list