Re: Realtek 8169 problems with net booting
From: Al Viro <viro@ZenIV.linux.org.uk>
Date: 2008-11-29 21:06:04
On Sat, Nov 29, 2008 at 09:44:17PM +0100, Francois Romieu wrote:
Alan Cox [off-list ref] :quoted
On one box here it has always been the case that now and then the boot with crash just after r8169 is loaded iff the BIOS network rom (ie the dhcp stuff) is enabled. Its erratic, hard to reproduce but I finally got around to looking at the driver and have a question that seems to apply to several network drivers[...]quoted
The master bit is off when the driver is loaded it appears but surely the driver should do twiddle a few bits soft reset chip pci_set_masterYou are right. Can you try the attached patch against 2.6.28-rc6 and tell if it makes a difference or not ? While I did not test it in a BIOS network boot configuration it did not crash trivially with these devices: RTL8168b/8111b / XID 38000000 RTL8110s / XID 04000000 Note to others: this patch needs testing with different chipsets (XID) before being included upstream.
FWIW, on one of two very similar motherboards I'm seeing the hard hangs
from 8169 with netboot enabled, but that smells like a hardware problem;
that crap got more and more frequent until I had to disconnect the
interface. Other symptoms: it kept trying to renegotiate the link every
few seconds. Hang used to happen on the first incoming packet after
boot, _but_ that didn't happen on each boot. IIRC, what finally got me
to call it quits was near 100% frequency of buggered boots *and* a hang
during downloading the kernel. I'm not entirely sure about the last
part, though - will retest once I get that box free for experiments.
Motherboards might be actually identical; r8169 *are*, according to lspci.
Device in question is
00:0d.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet (rev 10)
Subsystem: AOPEN Inc. AK86-L motherboard
Flags: bus master, 66MHz, medium devsel, latency 32, IRQ 23
I/O ports at b000 [size=256]
Memory at ed000000 (32-bit, non-prefetchable) [size=256]
[virtual] Expansion ROM at 70100000 [disabled] [size=128K]
Capabilities: [dc] Power Management version 2