I just upgraded the kernel on one of my servers from 2.4.20 to 2.6.20. Now the network card does not start up properly on boot, although I can subsequently start it manually.
The card is a D-Link DFE-530TX+, which maps to a RealTek 8139too chip. This seems to be a common problem, and there are dozens of postings on the scenario of an upgrade to 2.6.x with an 8139too. I have tried many of the suggested fixes, but cannot get it to work.
After the machine boots, it will not network. Running ifconfig indicates that eth0 is not present. However I can start the card manually by running "modprobe 8139too" then "ifup eth0", after which it networks with no problem. This isn't an adequate solution, because the server normally sits in a back room without an attached monitor.
If I run "dmesg" before the manual start there is no reference to the card. After the manual start, the following lines are appended to the dump:
8139too Fast Ethernet driver 0.9.28
ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 5
PCI: setting IRQ 5 as level-triggered
ACPI: PCI Interrupt 0000:00:09.0[A] -> Link [LNKD] -> GSI 5 (level, low) -> IRQ 5
eth0: RealTek RTL8139 at 0xf8956000, 00:40:05:01:c1:d2, IRQ 5
eth0: Identified 8139 chip type 'RTL-8100B/8139D'
eth0: link up, 100Mbps, half-duplex, lpa 0x40A1
Any suggestions? What additional information can I provide that would help?
Some configuration files and dumps:
ifcfg-eth0:
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
modules.conf:
alias eth0 8139too
post-install sound-slot-0 /bin/aumix-minimal -f /etc/.aumixrc -L >/dev/null 2>&1 || :
pre-remove sound-slot-0 /bin/aumix-minimal -f /etc/.aumixrc -S >/dev/null 2>&1 || :
alias usb-controller usb-uhci
ifconfig (before manual start):
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:19388 errors:0 dropped:0 overruns:0 frame:0
TX packets:19388 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1181424 (1.1 Mb) TX bytes:1181424 (1.1 Mb)
ifconfig (after manual start):
eth0 Link encap:Ethernet HWaddr 00:40:05:01:C1
2
inet addr:192.168.2.79 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:42429 errors:0 dropped:0 overruns:0 frame:0
TX packets:39758 errors:0 dropped:0 overruns:0 carrier:0
collisions:14 txqueuelen:1000
RX bytes:17510011 (16.6 Mb) TX bytes:5015911 (4.7 Mb)
Interrupt:5 Base address:0x6000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:19439 errors:0 dropped:0 overruns:0 frame:0
TX packets:19439 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1184246 (1.1 Mb) TX bytes:1184246 (1.1 Mb)
dmesg:
Linux version 2.6.20 (root@localhost.localdomain) (gcc version 3.2.2 20030222 (Red Hat Linux 3.2.2-5)) #3 SMP Wed Feb 21 04:35:53 PST 2007
BIOS-provided physical RAM map:
sanitize start
sanitize end
copy_e820_map() start: 0000000000000000 size: 000000000009f000 end: 000000000009f000 type: 1
copy_e820_map() type is E820_RAM
copy_e820_map() start: 000000000009f000 size: 0000000000001000 end: 00000000000a0000 type: 2
copy_e820_map() start: 00000000000f0000 size: 0000000000010000 end: 0000000000100000 type: 2
copy_e820_map() start: 0000000000100000 size: 000000003feec000 end: 000000003ffec000 type: 1
copy_e820_map() type is E820_RAM
copy_e820_map() start: 000000003ffec000 size: 0000000000003000 end: 000000003ffef000 type: 3
copy_e820_map() start: 000000003ffef000 size: 0000000000010000 end: 000000003ffff000 type: 2
copy_e820_map() start: 000000003ffff000 size: 0000000000001000 end: 0000000040000000 type: 4
copy_e820_map() start: 00000000ffff0000 size: 0000000000010000 end: 0000000100000000 type: 2
BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
BIOS-e820: 000000000009f000 - 00000000000a0000 (reserved)
BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
BIOS-e820: 0000000000100000 - 000000003ffec000 (usable)
BIOS-e820: 000000003ffec000 - 000000003ffef000 (ACPI data)
BIOS-e820: 000000003ffef000 - 000000003ffff000 (reserved)
BIOS-e820: 000000003ffff000 - 0000000040000000 (ACPI NVS)
BIOS-e820: 00000000ffff0000 - 0000000100000000 (reserved)
127MB HIGHMEM available.
896MB LOWMEM available.
Entering add_active_range(0, 0, 262124) 0 entries of 256 used
Zone PFN ranges:
DMA 0 -> 4096
Normal 4096 -> 229376
HighMem 229376 -> 262124
early_node_map[1] active PFN ranges
0: 0 -> 262124
On node 0 totalpages: 262124
DMA zone: 32 pages used for memmap
DMA zone: 0 pages reserved
DMA zone: 4064 pages, LIFO batch:0
Normal zone: 1760 pages used for memmap
Normal zone: 223520 pages, LIFO batch:31
HighMem zone: 255 pages used for memmap
HighMem zone: 32493 pages, LIFO batch:7
DMI 2.3 present.
ACPI: RSDP (v000 ASUS ) @ 0x000f6a90
ACPI: RSDT (v001 ASUS A7V 0x30303031 MSFT 0x31313031) @ 0x3ffec000
ACPI: FADT (v001 ASUS A7V 0x30303031 MSFT 0x31313031) @ 0x3ffec080
ACPI: BOOT (v001 ASUS A7V 0x30303031 MSFT 0x31313031) @ 0x3ffec040
ACPI: DSDT (v001 ASUS A7V 0x00001000 MSFT 0x0100000b) @ 0x00000000
ACPI: PM-Timer IO Port: 0xe408
Allocating PCI resources starting at 50000000 (gap: 40000000:bfff0000)
Detected 807.228 MHz processor.
Built 1 zonelists. Total pages: 260077
Kernel command line: ro root=LABEL=/ hdc=ide-scsi hdd=ide-scsi
ide_setup: hdc=ide-scsi
ide_setup: hdd=ide-scsi
Local APIC disabled by BIOS -- you can enable it with "lapic"
mapped APIC to ffffd000 (0180c000)
Enabling fast FPU save and restore... done.
Initializing CPU#0
PID hash table entries: 4096 (order: 12, 16384 bytes)
Console: colour VGA+ 80x25
Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
Memory: 1035352k/1048496k available (1834k kernel code, 12396k reserved, 762k data, 300k init, 130992k highmem)
virtual kernel memory layout:
fixmap : 0xfff4f000 - 0xfffff000 ( 704 kB)
pkmap : 0xffc00000 - 0xffe00000 (2048 kB)
vmalloc : 0xf8800000 - 0xffbfe000 ( 115 MB)
lowmem : 0xc0000000 - 0xf8000000 ( 896 MB)
.init : 0xc0390000 - 0xc03db000 ( 300 kB)
.data : 0xc02ca9a1 - 0xc0389414 ( 762 kB)
.text : 0xc0100000 - 0xc02ca9a1 (1834 kB)
Checking if this processor honours the WP bit even in supervisor mode... Ok.
Calibrating delay using timer specific routine.. 1616.18 BogoMIPS (lpj=3232373)
Mount-cache hash table entries: 512
CPU: After generic identify, caps: 0183f9ff c1c7f9ff 00000000 00000000 00000000 00000000 00000000
CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)
CPU: L2 Cache: 256K (64 bytes/line)
CPU: After all inits, caps: 0183f9ff c1c7f9ff 00000000 00000420 00000000 00000000 00000000
Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#0.
Compat vDSO mapped to ffffe000.
Checking 'hlt' instruction... OK.
SMP alternatives: switching to UP code
Freeing SMP alternatives: 12k freed
ACPI: Core revision 20060707
ACPI: setting ELCR to 0200 (from 0c20)
CPU0: AMD Athlon(tm) Processor stepping 02
SMP motherboard not detected.
Local APIC not detected. Using dummy APIC emulation.
Brought up 1 CPUs
NET: Registered protocol family 16
EISA bus registered
ACPI: bus type pci registered
PCI: PCI BIOS revision 2.10 entry at 0xf1180, last bus=1
PCI: Using configuration type 1
Setting up standard PCI resources
ACPI: Interpreter enabled
ACPI: Using PIC for interrupt routing
ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 9 10 *11 12 14 15)
ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 5 6 7 9 *10 11 12 14 15)
ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 *5 6 7 9 10 11 12 14 15)
ACPI: PCI Root Bridge [PCI0] (0000:00)
PCI: Probing PCI hardware (bus 00)
ACPI: Assume root bridge [\_SB_.PCI0] bus is 0
PCI quirk: region e400-e4ff claimed by vt82c586 ACPI
PCI quirk: region e200-e27f claimed by vt82c686 HW-mon
PCI quirk: region e800-e80f claimed by vt82c686 SMB
Boot video device is 0000:01:00.0
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT]
Linux Plug and Play Support v0.97 (c) Adam Belay
pnp: PnP ACPI init
pnp: PnP ACPI: found 14 devices
PCI: Using ACPI for IRQ routing
PCI: If a device doesn't work, try "pci=routeirq". If it helps, post a report
pnp: 00:03: ioport range 0xe400-0xe47f could not be reserved
pnp: 00:03: ioport range 0xe800-0xe80f has been reserved
PCI: Bridge: 0000:00:01.0
IO window: d000-dfff
MEM window: df000000-dfdfffff
PREFETCH window: dff00000-e3ffffff
PCI: Setting latency timer of device 0000:00:01.0 to 64
NET: Registered protocol family 2
IP route cache hash table entries: 32768 (order: 5, 131072 bytes)
TCP established hash table entries: 131072 (order: 8, 1048576 bytes)
TCP bind hash table entries: 65536 (order: 7, 524288 bytes)
TCP: Hash tables configured (established 131072 bind 65536)
TCP reno registered
checking if image is initramfs...it isn't (no cpio magic); looks like an initrd
Freeing initrd memory: 217k freed
Simple Boot Flag at 0x3a set to 0x1
apm: BIOS version 1.2 Flags 0x03 (Driver version 1.16ac)
highmem bounce pool size: 64 pages
VFS: Disk quotas dquot_6.5.1
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
io scheduler noop registered
io scheduler anticipatory registered
io scheduler deadline registered
io scheduler cfq registered (default)
PCI: Disabling Via external APIC routing
pci_hotplug: PCI Hot Plug PCI Core version: 0.5
input: Power Button (FF) as /class/input/input0
ACPI: Power Button (FF) [PWRF]
input: Power Button (CM) as /class/input/input1
ACPI: Power Button (CM) [PWRB]
ACPI: CPU0 (power states: C1[C1] C2[C2])
ACPI: Processor [CPU0] (supports 16 throttling states)
isapnp: Scanning for PnP cards...
isapnp: No Plug & Play device found
Real Time Clock Driver v1.12ac
Floppy drive(s): fd0 is 1.44M
FDC 0 is a post-1991 82077
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
VP_IDE: IDE controller at PCI slot 0000:00:04.1
VP_IDE: chipset revision 16
VP_IDE: not 100% native mode: will probe irqs later
VP_IDE: VIA vt82c686a (rev 22) IDE UDMA66 controller on pci0000:00:04.1
ide0: BM-DMA at 0xb800-0xb807, BIOS settings: hda
MA, hdb
MA
ide1: BM-DMA at 0xb808-0xb80f, BIOS settings: hdc
io, hdd
io
Probing IDE interface ide0...
hda: LG CD-RW CED-8120B, ATAPI CD/DVD-ROM drive
hdb: TDK CDRW121032A, ATAPI CD/DVD-ROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
Probing IDE interface ide1...
PDC20265: IDE controller at PCI slot 0000:00:11.0
ACPI: PCI Interrupt Link [LNKB] enabled at IRQ 10
PCI: setting IRQ 10 as level-triggered
ACPI: PCI Interrupt 0000:00:11.0[A] -> Link [LNKB] -> GSI 10 (level, low) -> IRQ 10
PDC20265: chipset revision 2
PDC20265: ROM enabled at 0x50000000
PDC20265: 100% native mode on irq 10
PDC20265: (U)DMA Burst Bit ENABLED Primary PCI Mode Secondary PCI Mode.
ide2: BM-DMA at 0x7800-0x7807, BIOS settings: hde
MA, hdf
MA
ide3: BM-DMA at 0x7808-0x780f, BIOS settings: hdg
MA, hdh
io
Probing IDE interface ide2...
hde: MAXTOR STM3120814A, ATA DISK drive
hdf: Maxtor 90680D4, ATA DISK drive
ide2 at 0x9000-0x9007,0x8802 on irq 10
Probing IDE interface ide3...
Probing IDE interface ide1...
Probing IDE interface ide3...
Probing IDE interface ide4...
Probing IDE interface ide5...
hde: max request size: 128KiB
hde: 234441648 sectors (120034 MB) w/8192KiB Cache, CHS=16383/255/63, UDMA(100)
hde: cache flushes supported
hde: hde1 hde2 hde3
hdf: max request size: 128KiB
hdf: 13281408 sectors (6800 MB) w/256KiB Cache, CHS=13176/16/63, UDMA(33)
hdf: cache flushes not supported
hdf: hdf1
ide-floppy driver 0.99.newide
PNP: PS/2 Controller [PNP0303:PS2K] at 0x60,0x64 irq 1
PNP: PS/2 controller doesn't have AUX irq; using default 12
serio: i8042 KBD port at 0x60,0x64 irq 1
serio: i8042 AUX port at 0x60,0x64 irq 12
mice: PS/2 mouse device common for all mice
input: AT Translated Set 2 keyboard as /class/input/input2
EISA: Probing bus 0 at eisa.0
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
NET: Registered protocol family 8
NET: Registered protocol family 20
Using IPI Shortcut mode
md: Autodetecting RAID arrays.
md: autorun ...
md: ... autorun DONE.
RAMDISK: Compressed image found at block 0
Time: tsc clocksource has been installed.
Time: acpi_pm clocksource has been installed.
VFS: Mounted root (ext2 filesystem).
kjournald starting. Commit interval 5 seconds
EXT3-fs: mounted filesystem with ordered data mode.
Freeing unused kernel memory: 300k freed
EXT3 FS on hde3, internal journal
Adding 2040244k swap on /dev/hde2. Priority:-1 extents:1 across:2040244k
kjournald starting. Commit interval 5 seconds
EXT3 FS on hde1, internal journal
EXT3-fs: mounted filesystem with ordered data mode.
hda: ATAPI 32X CD-ROM CD-R/RW drive, 8192kB Cache, DMA
Uniform CD-ROM driver Revision: 3.20
hdb: ATAPI 32X CD-ROM CD-R/RW drive, 2048kB Cache, DMA
SCSI subsystem initialized
parport_pc: VIA 686A/8231 detected
parport_pc: probing current configuration
parport_pc: Current parallel port base: 0x378
parport0: PC-style at 0x378 (0x778), irq 7 [PCSPP,TRISTATE]
parport_pc: VIA parallel port: io=0x378, irq=7
ieee1394: Initialized config rom entry `ip1394'
8139too Fast Ethernet driver 0.9.28
ACPI: PCI Interrupt Link [LNKD] enabled at IRQ 5
PCI: setting IRQ 5 as level-triggered
ACPI: PCI Interrupt 0000:00:09.0[A] -> Link [LNKD] -> GSI 5 (level, low) -> IRQ 5
eth0: RealTek RTL8139 at 0xf8956000, 00:40:05:01:c1:d2, IRQ 5
eth0: Identified 8139 chip type 'RTL-8100B/8139D'
eth0: link up, 100Mbps, half-duplex, lpa 0x40A1