[CentOS] r8169-driver CentOS5.2

Tue Jul 15 17:33:18 UTC 2008
Simen Timian Thoresen <simentt at dolphinics.no>

Hi all,

Another FYI-mail (and just to verify that I'm not going insane here);

I recently purchased an ASUS M3A78-EMH HDMI -board with a tri-core 
Phenom. This is a small uATX-board with all the garnish integrated 
motherboards are supposed to come with, and fairly well supported in 
CentOS 5 and other modern distros. When I installed it (~2 months ago) 
the NIC was not supported;

Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI 
Express Gigabit Ethernet controller (rev 02)

...but Realtek provided a 2.6-kernel compatible r8168-driver;
r8168-8.006.00

When the CentOS 5.2 updates were published, I saw to my happiness that 
the kernel-supplied r8169-driver now handled the NIC, and I had no 
reason to rebuild the r8168-driver to support the new kernel.

Last time I rebooted, was July 2nd, to the 2.6.19-92.1.6.el5 kernel.

Since then, the kernel supplied r8169-driver worked like a charm. The 
machine is a home file-server, serving files over NFS and SMB, and runs 
my torrent downloads. It also pulls CentOS updates. I would have noticed 
if it did not work.

Today, I got around to replacing a failed disk, and after rebooting I 
had no network connectivity. The NIC displayed 'weird' symptoms; 10Mbps 
link as shown by ethtool, 100Mbps link as shown by the link-indicator on 
the switch, ifconfig showed no TX-packets, some RX-packets, /billions/ 
of dropped packets - increasing by millions every second. The kernel log 
showed multiple 'Link down' entries.

After digging around a little, swapping switch-ports, yattayatta, I 
unloaded the r8169-module (rmmod) and built and loaded the 
Realtek-supplied r8168-module.

Link up, packtes going in and out, no dropped packets, GigE link, etc etc.

At this point I have no idea what actually happened. I'm thinking some 
weird state on the PHY of the NIC (I've seen this on the Nvidia NICs) 
that was not flushed due to a too short power-loss, or possibly that the 
r8168-driver sets some PHY-state that was not lost at the kernel-update 
that brought me the 'working' r8169-driver, or something similar.

I'm taking suggestions, tho.

Anyone else with this same board, CentOS 5.2 (x86_64) and using the 
r8169-driver?

-S


-- 
Simen Thoresen, Dolphin ICS
Systems Administration and Wulfkit Support