Re: Kernel Panics in 4.7-STABLE

2002-10-13 Thread Matthew Dillon

The nexus_print_all_resources() panic is due to a bug in EISA bus
handling that shows up due to a recent commit John made.
He has a tentitive patch for it but it needs to be tested / verified.

I've included it below.  Pelase try this patch and tell us if it
fixes it.

-Matt
Matthew Dillon 
[EMAIL PROTECTED]

:
:nexus_print_all_resources(c0e62280,c0e4a680,c0e62280,c0e62280,0) at 
:nexus_print_all_resources+0x14
:...


Index: nexus.c
===
RCS file: /usr/cvs/src/sys/i386/i386/nexus.c,v
retrieving revision 1.26.2.6
diff -u -r1.26.2.6 nexus.c
--- nexus.c 3 Mar 2002 05:42:49 -   1.26.2.6
+++ nexus.c 11 Oct 2002 18:07:45 -
@@ -219,21 +219,21 @@
 * connection points now so they show up on motherboard.
 */
if (!devclass_get_device(devclass_find(eisa), 0)) {
-   child = device_add_child(dev, eisa, 0);
+   child = BUS_ADD_CHILD(dev, 0, eisa, 0);
if (child == NULL)
panic(nexus_attach eisa);
device_probe_and_attach(child);
}
 #if NMCA  0
if (!devclass_get_device(devclass_find(mca), 0)) {
-   child = device_add_child(dev, mca, 0);
-   if (child == 0)
+   child = BUS_ADD_CHILD(dev, 0, mca, 0);
+   if (child == NULL)
panic(nexus_probe mca);
device_probe_and_attach(child);
}
 #endif
if (!devclass_get_device(devclass_find(isa), 0)) {
-   child = device_add_child(dev, isa, 0);
+   child = BUS_ADD_CHILD(dev, 0, isa, 0);
if (child == NULL)
panic(nexus_attach isa);
device_probe_and_attach(child);

To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-stable in the body of the message



Re: Kernel Panics in 4.7-STABLE

2002-10-13 Thread Matthew Dillon

Oh, also, just a general note to people.  These bug reports are great,
it tells us that something went wrong, but it would be nice if they
were a little more complete :-)  For example, it wasn't until the 20th
posting in this and the similar other kernel panic thread on -hackers
that someone actually posted the console text (or DDB backtrace)
leading up to the crash, so we didn't connect it with the NEXUS issue
until just now.

-Matt

To Unsubscribe: send mail to [EMAIL PROTECTED]
with unsubscribe freebsd-stable in the body of the message