Bug#527056: linux-image-2.6.29-2-686: e100 ethernet controller gets defunct after a normal reboot
Package: linux-image-2.6.29-2-686
Version: 2.6.29-4
Severity: normal
-- Package-specific info:
-- System Information:
Debian Release: squeeze/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: i386 (i686)
Kernel: Linux 2.6.29.2joybook5000
Locale: LANG=zh_CN.UTF-8, LC_CTYPE=zh_CN.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages linux-image-2.6.29-2-686 depends on:
ii debconf [debconf-2.0] 1.5.26 Debian configuration management sy
ii initramfs-tools [linux-initra 0.93.2 tools for generating an initramfs
ii module-init-tools 3.7-pre9-1 tools for managing Linux kernel mo
Versions of packages linux-image-2.6.29-2-686 recommends:
ii libc6-i686 2.9-4 GNU C Library: Shared libraries [i
Versions of packages linux-image-2.6.29-2-686 suggests:
ii grub 0.97-53 GRand Unified Bootloader (Legacy v
pn linux-doc-2.6.29 <none> (no description available)
-- debconf information:
shared/kernel-image/really-run-bootloader: true
linux-image-2.6.29-2-686/preinst/lilo-has-ramdisk:
linux-image-2.6.29-2-686/postinst/depmod-error-2.6.29-2-686: false
linux-image-2.6.29-2-686/postinst/kimage-is-a-directory:
linux-image-2.6.29-2-686/preinst/overwriting-modules-2.6.29-2-686: true
linux-image-2.6.29-2-686/postinst/bootloader-error-2.6.29-2-686:
linux-image-2.6.29-2-686/preinst/abort-install-2.6.29-2-686:
linux-image-2.6.29-2-686/postinst/create-kimage-link-2.6.29-2-686: true
linux-image-2.6.29-2-686/preinst/failed-to-move-modules-2.6.29-2-686:
linux-image-2.6.29-2-686/preinst/initrd-2.6.29-2-686:
linux-image-2.6.29-2-686/postinst/old-dir-initrd-link-2.6.29-2-686: true
linux-image-2.6.29-2-686/postinst/old-initrd-link-2.6.29-2-686: true
linux-image-2.6.29-2-686/prerm/removing-running-kernel-2.6.29-2-686: true
linux-image-2.6.29-2-686/postinst/bootloader-test-error-2.6.29-2-686:
linux-image-2.6.29-2-686/postinst/old-system-map-link-2.6.29-2-686: true
linux-image-2.6.29-2-686/preinst/bootloader-initrd-2.6.29-2-686: true
linux-image-2.6.29-2-686/postinst/depmod-error-initrd-2.6.29-2-686: false
linux-image-2.6.29-2-686/preinst/elilo-initrd-2.6.29-2-686: true
linux-image-2.6.29-2-686/prerm/would-invalidate-boot-loader-2.6.29-2-686: true
linux-image-2.6.29-2-686/preinst/lilo-initrd-2.6.29-2-686: true
linux-image-2.6.29-2-686/preinst/abort-overwrite-2.6.29-2-686:
The ethernet controller doesn't work after normal reboot. I have to halt the system and restart the power if I want to "reboot". The ethernet controller works well after these "reboot" steps.
A part of "lscpi -v":
01:08.0 Ethernet controller: Intel Corporation 82801DB PRO/100 VE (MOB) Ethernet Controller (rev 83)
Subsystem: Benq Corporation Device 500c
Flags: bus master, medium devsel, latency 128, IRQ 10
Memory at e0008000 (32-bit, non-prefetchable) [size=4K]
I/O ports at c0c0 [size=64]
Capabilities: <access denied>
Kernel driver in use: e100
When the ethernet controller isn't working, i.e. after a normal reboot, "lspci" can list out the information of the ethernet controller just like above except the line "Kernel driver in use: e100". I then try loading the "e100" module manually with "sudo modprobe e100". But it still doesn't work.
A part of "dmesg" of a perfect boot:
[ 3.083513] e100: Intel(R) PRO/100 Network Driver, 3.5.23-k6-NAPI
[ 3.083517] e100: Copyright(c) 1999-2006 Intel Corporation
[ 3.086374] ACPI: PCI Interrupt Link [LNKE] enabled at IRQ 10
[ 3.086381] e100 0000:01:08.0: PCI INT A -> Link[LNKE] -> GSI 10 (level, low) -> IRQ 10
[ 3.171720] e100 0000:01:08.0: PME# disabled
[ 3.172127] e100: eth0: e100_probe: addr 0xe0008000, irq 10, MAC addr 00:03:9d:73:a4:20
A part of "dmesg" of an imperfect boot:
[ 2.047247] e100: Intel(R) PRO/100 Network Driver, 3.5.23-k6-NAPI
[ 2.047251] e100: Copyright(c) 1999-2006 Intel Corporation
[ 2.047302] e100 0000:01:08.0: BAR 0: error updating (0xe0008000 != 0x000000)
[ 2.047355] e100 0000:01:08.0: enabling device (0000 -> 0003)
[ 2.050246] ACPI: PCI Interrupt Link [LNKE] enabled at IRQ 10
[ 2.050255] e100 0000:01:08.0: PCI INT A -> Link[LNKE] -> GSI 10 (level, low) -> IRQ 10
[ 2.050363] e100 0000:01:08.0: setting latency timer to 64
[ 2.137823] e100: 0000:01:08.0: e100_eeprom_load: EEPROM corrupted
[ 2.137879] e100 0000:01:08.0: PCI INT A disabled
[ 2.137894] e100: probe of 0000:01:08.0 failed with error -11
And I have tried a few other versions of Linux kernel. I found that this bug emerged in 2.6.27 version.
Default kernel of Ubuntu 8.04, i.e. 2.6.24 doesn't have this bug, and default kernel of Testing, i.e. 2.6.26 neither.
All kernels from 2.6.27 version from multiple distributions like Ubuntu 8.10(2.6.27), Ubuntu 9.04(2.6.28), Arch(2.6.28), Gentoo(2.6.28) and Unstable(2.6.29) have this bug, including the 2.6.29.2 kernel I compiled by myself.
Reply to: