Re: [PATCH] de4x5.c [was Re: pre-2.1.116-1 breaks Cyrix 6x86 support]

David C. Davies (davies@ultranet.com)
Fri, 14 Aug 1998 17:16:53 -0400


All,

1. BOOT TIME OOPSES

Eamon Hughes should find the solution to his problem as the inclusion of
"static" in the the 2 lines initialised with DE4X5_SIGNATURE. As Gabriel
points out, this is probably a preferred solution in terms of the
resulting code, but nevertheless, gcc/string.h need fixing.

2. REGION ALREADY ALLOCATED MESSAGES

Multiple messages at boot time of the form "ethN: region already
allocated at 0xec00."

I've not touched the code that triggers this message for over a year, so
something else has changed elsewhere. In the 2 machines I have access
to, I can't trigger the problem under 2.1.107 and 2.1.115. The only ways
I can see that this message is possible is:

a) if the driver detects a DECchip that has been initialised by another
driver (de4x5 detects the chip which has its base_address field filled
in, causing the message to be output).

b) if some other device has claimed the same i/o space either due to bad
PCI BIOS or a driver requesting too much space compared to what the BIOS
allocated.

c) if the new PCI initialisation code contains a loop allowing d) below
to occur. The changes to pci_probe() recently have centered on
incorporating the new PCI functions which may or may not have bugs.

d) possibly if the lastPCI index isn't set to NO_MORE_PCI after scanning
the bus for cards.

Case b) or c) seem good candidates to me. Case d) does need fixing,
although the counter would have to wrap for the messages to be seen.

My temporary fix to de4x5_find_class() [making the 'int cnt' declaration
static] that I issued last week breaks module loading which is
unacceptable. This fix for case d) works here for module loading and
compiled in kernels, but since I've never seen the problem, I'll have to
rely on others' reports as to whether it really fixes things.

--- linux-2.1.115/drivers/net/de4x5.c Wed Aug 12 17:00:29 1998
+++ ../new/de4x5/srom/de4x5.c Fri Aug 14 14:56:11 1998
@@ -2197,7 +2205,7 @@
}
}

- if (loading_module) lastPCI = NO_MORE_PCI;
+ lastPCI = NO_MORE_PCI;

return;
}

Zlatko, can you let me have a complete boot log showing all your devices
as they're probed. Thanks.

Linus, I'll issue a patch soon to include fixes for the above.

Regards,

Dave

--------------------------------

The Rich Tapestry of Life is Fraying . . .

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html