Two problems I hope to solve:
1. The switch being used has autoneg off and has port set to 100 full duplex. 2. Many times NIC fails to come up properly during PXE boot: r8169: eth0: link down ADDRCONF(NETDEV_UP): eth0: link is not ready
I can't use ethtool to disable autoneg because the nic driver is built into a bzImage. The root fs is currently being mounted via nfs during pxeboot at speed 10, half-duplex. In the past for sk98lin driver I could pass a kernel module parameter sk98lin.ConType=100FD on the kernel boot line.
I looked at the r8169.c and tried to hard code the default to autoneg off but that didn't work.
--- linux-2.6.18-274.12.1.el5.i686/drivers/net/r8169.c +++ disable-autoneg/drivers/net/r8169.c @@ -2814,7 +2814,8 @@ * rtl8169_set_speed_xmii takes good care of the Fast Ethernet * only 8101. Don't panic. */ - rtl8169_set_speed(dev, AUTONEG_ENABLE, SPEED_1000, DUPLEX_FULL); + //rtl8169_set_speed(dev, AUTONEG_ENABLE, SPEED_1000, DUPLEX_FULL); + rtl8169_set_speed(dev, AUTONEG_DISABLE, SPEED_100, DUPLEX_FULL);
if ((RTL_R8(PHYstatus) & TBI_Enable) && netif_msg_link(tp)) printk(KERN_INFO PFX "%s: TBI auto-negotiating\n", dev->name);
Any other ideas?
-Scott
On 12/20/2011 12:59 AM, Barry Brimer wrote:
- The switch being used has autoneg off and has port set to 100 full duplex.
- Many times NIC fails to come up properly during PXE boot:
Any other ideas?
udev rules? mii-tool? _______________________________________________ CentOS mailing list CentOS@centos.org http://lists.centos.org/mailman/listinfo/centos
re-enable autoneg on switch?
In article 4EF0939C.9030907@emmanuelcomputerconsulting.com, William Warren hescominsoon@emmanuelcomputerconsulting.com wrote:
On 12/20/2011 12:59 AM, Barry Brimer wrote:
- The switch being used has autoneg off and has port set to 100 full duplex.
- Many times NIC fails to come up properly during PXE boot:
Any other ideas?
udev rules? mii-tool?
re-enable autoneg on switch?
Indeed. I once worked at a large ISP where the network admins thought they were increasing "reliability" by setting all the switch ports to fixed 100Mb-FD without auto-negotiation. All it achieved was that any new machines where someone had not remembered to set the fixed config for the network port would attempt to auto-neg, fail to do so, and fall back to Half Duplex. That resulted in many collisions and very poor throughput.
If only they had left all the ports on autoneg and then only set a fixed mode on specific ports for machines that would not negotiate properly, which would have been a very small minority! But it's hard to convince someone whose job function implies that they are the expert...
Sorry for the rant - just pushed a button, that's all!
Cheers Tony
On 20 December 2011 14:34, Tony Mountifield tony@softins.co.uk wrote:
In article 4EF0939C.9030907@emmanuelcomputerconsulting.com, William Warren hescominsoon@emmanuelcomputerconsulting.com wrote:
On 12/20/2011 12:59 AM, Barry Brimer wrote:
- The switch being used has autoneg off and has port set to 100 full duplex.
- Many times NIC fails to come up properly during PXE boot:
Any other ideas?
udev rules? mii-tool?
re-enable autoneg on switch?
Indeed.
unless the switchports are *really* old then there is no excuse to have auto-negotiation disabled
point resisting network admins to this post by this guy - Greg Ferro (CCIE #6920)
http://etherealmind.com/ethernet-autonegotiation-works-why-how-standard-shou...
mike