DragonFly BSD
DragonFly bugs List (threaded) for 2004-07
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: kernel trap 12

From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxx>
Date: Tue, 20 Jul 2004 13:49:01 -0700 (PDT)

:-On [20040720 22:12], Matthew Dillon (dillon@xxxxxxxxxxxxxxxxxxxx) wrote:
:>     Well, lets start with a stack trace ('trace' in ddb).
:panic(c0328fae, d1728260, c3081788, c03294f9, c3081788) at panic+0x97
:devclass_add_device(c3081788, d1728260) at devclass_add_device+0x83
:make_device(0,c03294f9,0,c04e6d84,c0182e6b) at make_device+0x11b
:This ought to be enough for what we need...

    Ugh.  wild goose chase.  That case must be occuring more then once.  It
    died adding the root device which has no name but does have a device
    class, so that can't be it.  Lets try something else.

    Remove the assertion and add some more printf's to bus_generic_probe():


Index: kern/subr_bus.c
RCS file: /cvs/src/sys/kern/subr_bus.c,v
retrieving revision 1.21
diff -u -r1.21 subr_bus.c
--- kern/subr_bus.c	8 Jul 2004 12:43:32 -0000	1.21
+++ kern/subr_bus.c	20 Jul 2004 20:48:15 -0000
@@ -1776,8 +1776,19 @@
 	devclass_t dc = dev->devclass;
 	driverlink_t dl;
-	TAILQ_FOREACH(dl, &dc->drivers, link)
+	printf("bus_generic_probe: %p dc=%p driver=%p "
+		"unit=%d name=%s desc=%s busy=%d state=%d flags=%08x\n",
+		dev, dc, dev->driver, 
+		dev->unit, dev->nameunit, dev->desc,
+		dev->busy, dev->state, dev->flags);
+	if (dev->driver->name)
+		printf("bus_generic_probe: DNAME: %s\n", dev->driver->name);
+	TAILQ_FOREACH(dl, &dc->drivers, link) {
+		printf("generic probe of driverlink %p\n", dl);
+		printf("generic probe of driver %p\n", dl->driver);
 		DEVICE_IDENTIFY(dl->driver, dev);
+	}

[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]