wired ethernet can't connect after upgrade 11.4@32bit->12.1@64bit

Hi folks,

I’ve got a Dell Latitude E6400 with Intel network card (details of lspci below), which worked fine with 11.4 and cannot detect even a cable connect when I boot to 12.1. Both systems are clean installs on separate hdds, so it’s not an unclean upgrade issue as far as I can see. Also ethtool cannot access the device anymore:


# ethtool eth0
Settings for eth0:
Cannot get device settings: No such device
Cannot get wake-on-lan settings: No such device
Cannot get message level: No such device
Cannot get link status: No such device
No data available

It’s the regular 3.1.9-1.4-desktop kernel on 12.1, network controlled through networkmanager. The kernel log says “eth0: link is not ready”, all dhcp and direct connection attempts time out.


#lspci -v
00:19.0 Ethernet controller: Intel Corporation 82567LM Gigabit Network Connection (rev 03)
        Subsystem: Dell Device 0233
        Flags: fast devsel, IRQ 22
        Memory at f6fe0000 (32-bit, non-prefetchable) [disabled] [size=128]
        Memory at f6fdb000 (32-bit, non-prefetchable) [disabled] [size=4]
        I/O ports at efe0 [disabled] [size=32]
        Capabilities: [c8] Power Management version 2
        Capabilities: [d0] MSI: Enable- Count=1/1 Maskable- 64bit+
        Capabilities: [e0] PCI Advanced Features
        Kernel driver in use: e1000e

Thanks for any help/hints!

(how do I cross-post on kernel and 64bit branches of the forum? )[/size][/size][/size]

The error from ethtool eth0, just means there is no eth0 but don’t assume that is its name. I have a bash script, that can look through the whole system here: http://forums.opensuse.org/english/development/programming-scripting/448072-netinfo-read-network-pc-information-into-local-text-file.html

You can post the output into SuSE Paste here: SUSE Paste

Make sure to select Delete After (in middle bottom) as Never. Put in your** forum name** and give it an appropriate title. Then, post the web link here in a forum message for your final SuSE Paste product. Make sure to remove any wireless passwords, should they be found and exist. The resulting data can helpful to determine just what might be wrong on your PC.

Thank You,

Hi James,

Thanks for the hint, I’ve generated the info file and will attach it in the next message. However to keep things short and simple I also add the output from /sbin/ifconfig here to reply on your comment:

The error from ethtool eth0, just means there is no eth0 but don’t assume that is its name.

Apparently the device is there and it’s called eth0. I can also manipulate it via ifconfig, but with no real success, as the link detection fails.


---------------------------------------------------
/sbin/ifconfig Output
---------------------------------------------------
eth0      Link encap:Ethernet  HWaddr 00:26:B9:B3:2F:5F  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
          Interrupt:22 Memory:f6fe0000-f7000000

same from /sbin/hwinfo:


---------------------------------------------------
/usr/sbin/hwinfo --network_ctrl
---------------------------------------------------
10: PCI 19.0: 0200 Ethernet controller
  [Created at pci.319]
  Unique ID: rBUF.nZMtdpO6BAC
  SysFS ID: /devices/pci0000:00/0000:00:19.0
  SysFS BusID: 0000:00:19.0
  Hardware Class: network
  Model: "Intel 82567LM Gigabit Network Connection"
  Vendor: pci 0x8086 "Intel Corporation"
  Device: pci 0x10f5 "82567LM Gigabit Network Connection"
  SubVendor: pci 0x1028 "Dell"
  SubDevice: pci 0x0233 
  Revision: 0x03
  Driver: "e1000e"
  Driver Modules: "e1000e"
  Device File: eth0
  Memory Range: 0xf6fe0000-0xf6ffffff (rw,non-prefetchable,disabled)
  Memory Range: 0xf6fdb000-0xf6fdbfff (rw,non-prefetchable,disabled)
  I/O Ports: 0xefe0-0xefff (rw,disabled)
  IRQ: 22 (131 events)
  HW Address: 00:26:b9:b3:2f:5f
  Link detected: no
  Module Alias: "pci:v00008086d000010F5sv00001028sd00000233bc02sc00i00"
  Driver Info #0:
    Driver Status: e1000e is active
    Driver Activation Cmd: "modprobe e1000e"
  Config Status: cfg=no, avail=yes, need=no, active=unknown

Thanks for any help!

So, here is the output of James’ netinfo tool. Would be grateful if anyone finds the cause of the issue!

What happens with a static IP, DNS’s 8.8.8.8 and 8.8.4.4, Gateway the address of your router?

On 2012-02-24 10:56, dich wrote:
> Both systems are clean installs on separate
> hdds, so it’s not an unclean upgrade issue as far as I can see.

Ah. Then it is NOT an upgrade. It is a fresh install.


Cheers / Saludos,

Carlos E. R.
(from 11.4 x86_64 “Celadon” at Telcontar)

I found a suggestion to add the kernel load option pcie_aspm=off here: [Bug 615761] Intel 82573L: No ethernet network](http://lists4.opensuse.org/opensuse-bugs/2010-08/msg00720.html), the link is old, but I wonder if it might apply in your case?

Thank You,

I doubt I can test ANY of these when the cable plugged is not sensed by the adapter.
I’ve tried forcing a static IP etc, but it wouldn’t even pind the router (naturally, as it can’t “see” the cable)…

I will give it a try, though it refers to kernels up to 2.6.35. In my case it worked perfectly up to kernel 2.6.37.6 inclusive, and stopped only with the 3.x series when I installed the OSE12.1.

A few snippets from the logs with old(working) and new(failing) kernels:
both have lines with “e1000e 0000:00:19.0: PME# disabled”, suppose it’s harmless

old: e1000e 0000:00:19.0: irq 41 for MSI/MSI-X
new: e1000e 0000:00:19.0: irq 46 for MSI/MSI-X

new:
e1000e 0000:00:19.0: BAR 0: set to [mem 0xf6fe0000-0xf6ffffff] (PCI address [0xf6fe0000-0xf6ffffff])
e1000e 0000:00:19.0: BAR 1: set to [mem 0xf6fdb000-0xf6fdbfff] (PCI address [0xf6fdb000-0xf6fdbfff])
e1000e 0000:00:19.0: BAR 2: set to [io 0xefe0-0xefff] (PCI address [0xefe0-0xefff])

the old one doesn’t have any BAR statements.

Thanks for all help!

Just in case anyone else hits this problem - here’s the solution (learned from e1000-devel mailing lists):

The driver enters powermanagement mode D3 and doesn’t wake up when it should. Obviously the newer kernels (in 12.2) have this fixed already, one may expect that it will eventually be backported to the kernel in 12.1.

The explicit method to turn the card on is to run (as root):

echo on > /sys/bus/pci/devices/0000:00:19.0/power/control

instead of 0000:00:19.0 put the actual pci address of your card (find it via lspci).

Good luck!

On 2012-04-20 19:06, dich wrote:
>
> Just in case anyone else hits this problem - here’s the solution
> (learned from e1000-devel mailing lists):

Perhaps you should report this in Bugzilla, so that they track the issue.


Cheers / Saludos,

Carlos E. R.
(from 11.4 x86_64 “Celadon” at Telcontar)