Re: [Etherboot-developers] eepro100.c patch testing
Brought to you by:
marty_connor,
stefanhajnoczi
|
From: Ken Y. <ke...@nl...> - 2000-11-04 11:51:29
|
>> static void eepro100_disable(struct nic *nic)
>> {
>> /* See if this PartialReset solves the problem with interfering with
>> kernel operation after Etherboot hands over. - Ken 20001102 */
>> outl(2, ioaddr + SCBPort);
>> }
>
>I applied it to the latest version of Etherboot (4.6.10), built using
>the default Makefile options, put it on a floppy, and tried it out. I
>set up a reboot test where the machine constantly reboots while a
>monitoring program watches. So far, it has successfully rebooted 197
>times with no crashes/problems/etc.
>
>What are the circumstances under which ppl are seeing kernel crashes?
>I can try to reproduce the situation in the lab using the reboot test.
>
>I had problems a few months ago with kernel panics on bootup when I
>was using 2.2.5. I upgraded to 2.2.15 (the latest at the time) and it
>fixed all my problems.
Somebody reported that the Ethernet controller was still alive after
handing over control to Linux and received stray packets (in busy
network) which corrupted the memory area reserved for packets but now
occupied by kernel. It's entirely plausible, and the *_disable routine
is to turn off the Ethernet controller just before Etherboot hands over
control to the booted image, that's why I added this routine to the
original BSD netboot framework. Unfortunately it hasn't been implemented
in all drivers.
Thanks for the testing, this will be in 4.6.11, since it doesn't hurt
anything and will probably help.
|