Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 12 Mar 2003 10:49:14 -0500 (EST)
From:      John Baldwin <jhb@FreeBSD.org>
To:        Tod McQuillin <devin@spamcop.net>
Cc:        freebsd-current@freebsd.org
Subject:   RE: lock order reversal?  current with tl ethernet
Message-ID:  <XFMail.20030312104914.jhb@FreeBSD.org>
In-Reply-To: <20030312141402.X61843@glass.pun-pun.prv>

next in thread | previous in thread | raw e-mail | index | archive | help

On 12-Mar-2003 Tod McQuillin wrote:
> 
> Running -current from March 11 on a dual cpu compaq 5100, there are some
> warnings in the dmesg about the tl ethernet interface.
> 
> Here are the warnings:
> 
> malloc() of "128" with the following non-sleepablelocks held:
> exclusive sleep mutex tl0 (network driver) r = 0 (0xc4017aa8) locked @
> /usr/src/5-current/src/sys/pci/if_tl.c:1146

It's holding the lock across bus_setup_intr().  You can try the
following patch:

Index: if_tl.c
===================================================================
RCS file: /usr/cvs/src/sys/pci/if_tl.c,v
retrieving revision 1.74
diff -u -r1.74 if_tl.c
--- if_tl.c     19 Feb 2003 05:47:41 -0000      1.74
+++ if_tl.c     12 Mar 2003 15:20:47 -0000
@@ -1138,12 +1138,11 @@
 
        if (t->tl_name == NULL) {
                device_printf(dev, "unknown device!?\n");
-               goto fail;
                device_printf(dev, "unknown device!?\n");
-               goto fail;
RCS file: /usr/cvs/src/sys/pci/if_tl.c,v
retrieving revision 1.74
diff -u -r1.74 if_tl.c
--- if_tl.c     19 Feb 2003 05:47:41 -0000      1.74
+++ if_tl.c     12 Mar 2003 15:20:47 -0000
@@ -1138,12 +1138,11 @@
 
        if (t->tl_name == NULL) {
                device_printf(dev, "unknown device!?\n");
-               goto fail;
+               return (ENXIO);
        }
 
        mtx_init(&sc->tl_mtx, device_get_nameunit(dev), MTX_NETWORK_LOCK,
            MTX_DEF | MTX_RECURSE);
-       TL_LOCK(sc);
 
        /*
         * Map control/status registers.
@@ -1348,12 +1347,12 @@
        /*
         * Call MI attach routine.
         */

-- 

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

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




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