forcedeth: MAC-address reversed on resume from suspend

From: Richard Jonsson
Date: Wed Jan 02 2008 - 16:05:13 EST


Bugreport regarding forcedeth driver.

When returning from suspend-to-RAM the MAC-address byteorder is reversed. After another suspend-resume cycle the MAC-address is again correct. This brings a great deal of pain since the NIC is assigned a random MAC-address when it is detected as invalid.

I cannot say if this issue appeared recently or if it's been in the kernel for a while, as I've been using wireless until recently.

I read somewhere on lkml that the mac is read from the device, then reversed and finally written back to the device. Can it be that it is read again on resume and reversed, and then again written to the device? This would explain why it's ok every other resume cycle.

MAC is always correct when cold booting.

Random computer info:
HP dv2140eu, amd64 smp, nvidia mcp51, kernel 2.6.24-rc3, ubuntu feisty

dmesg when fail:
forcedeth 0000:00:14.0: Invalid Mac address detected: e1:97:11:d3:16:00
forcedeth 0000:00:14.0: ifname eth0, PHY OUI 0x5043 @ 1, addr 00:00:6c:1e:34:69

dmesg when good:
forcedeth 0000:00:14.0: ifname eth0, PHY OUI 0x5043 @ 1, addr 00:16:d3:11:97:e1
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/