Latest working kernel version: 2.6.23.9 Earliest failing kernel version: 2.6.21 Distribution: Hardware Environment: e1000 with 82571 chip Software Environment: CentOS 4.5 Problem Description: We have a machine with the e1000(82571) driver which could not detect the correct link mode with a switch supports 1000 Mbps/s. I just find that the ethtool can't support 10 Mbps/s Half and 1000 Mbps/s Full mode. Therefore, the e1000 code should be fixed by add all modes at the 216 lines in e1000_ethtool.c. It is as follow: hw->autoneg_advertised |= ecmd->advertising | ADVERTISED_TP | ADVERTISED_Autoneg; Steps to reproduce: 1. Add a entry ' ETHTOOL_OPTS="autoneg on" ' in the /etc/sysconfig/network-scripts/ifcfg-eth0; 2. Run '/etc/init.d/network restart'; 3. Run 'ethtool eth0', it displays the speed is 100 Mbps/s. But the real link mode should be 1000 Mbps/s
Reply-To: akpm@linux-foundation.org (switched to email. Please respond via emailed reply-to-all, not via the bugzilla web interface). On Tue, 25 Mar 2008 07:29:56 -0700 (PDT) bugme-daemon@bugzilla.kernel.org wrote: > http://bugzilla.kernel.org/show_bug.cgi?id=10322 > > Summary: e1000 is not auto-negotiating to 1GB full duplex speed > even there is 1GB speed availble > Product: Drivers > Version: 2.5 > KernelVersion: 2.6.23 > Platform: All > OS/Version: Linux > Tree: Mainline > Status: NEW > Severity: normal > Priority: P1 > Component: Network > AssignedTo: jgarzik@pobox.com > ReportedBy: lqs_xting@sohu.com > CC: lqs_xting@sohu.com > > > Latest working kernel version: 2.6.23.9 > Earliest failing kernel version: 2.6.21 err, according to this, we had the bug in 2.6.21 and then fixed it in 2.6.23.9, so this is a report of an already fixed bug ;) Can you please clarify the version numbers here? > Distribution: > Hardware Environment: e1000 with 82571 chip > Software Environment: CentOS 4.5 > Problem Description: > We have a machine with the e1000(82571) driver which could not detect the > correct link mode with a switch supports 1000 Mbps/s. I just find that the > ethtool can't support 10 Mbps/s Half and 1000 Mbps/s Full mode. Therefore, > the > e1000 code should be fixed by add all modes at the 216 lines in > e1000_ethtool.c. It is as follow: > > hw->autoneg_advertised |= ecmd->advertising | > ADVERTISED_TP | > ADVERTISED_Autoneg; > > > Steps to reproduce: > 1. Add a entry ' ETHTOOL_OPTS="autoneg on" ' in the > /etc/sysconfig/network-scripts/ifcfg-eth0; > 2. Run '/etc/init.d/network restart'; > 3. Run 'ethtool eth0', it displays the speed is 100 Mbps/s. But the real link > mode should be 1000 Mbps/s
Andrew Morton wrote: >> Hardware Environment: e1000 with 82571 chip >> Software Environment: CentOS 4.5 >> Problem Description: >> We have a machine with the e1000(82571) driver which could not detect the >> correct link mode with a switch supports 1000 Mbps/s. I just find that the >> ethtool can't support 10 Mbps/s Half and 1000 Mbps/s Full mode. Therefore, >> the >> e1000 code should be fixed by add all modes at the 216 lines in >> e1000_ethtool.c. It is as follow: >> >> hw->autoneg_advertised |= ecmd->advertising | >> ADVERTISED_TP | >> ADVERTISED_Autoneg; >> >> >> Steps to reproduce: >> 1. Add a entry ' ETHTOOL_OPTS="autoneg on" ' in the >> /etc/sysconfig/network-scripts/ifcfg-eth0; >> 2. Run '/etc/init.d/network restart'; >> 3. Run 'ethtool eth0', it displays the speed is 100 Mbps/s. But the real >> link >> mode should be 1000 Mbps/s a bit moot because 82571 support is moving to e1000e and thus I will (probably) not fix this bug. all 82571 support will be removed from e1000 from 2.6.26 onwards. Please re-test against e1000e from 2.6.25-rc5 - if the bug is still in that driver then we need to look at it again. Either that or reproduce against an 8254x adapter? Auke
Today, I re-test e1000 and e1000e with 2.6.25-rc5. The problem is still existed. My hardware is "Ethernet controller: Intel Corporation 82573E Gigabit Ethernet Controller (Copper) (rev 03)". If I disable the autoneg option for the e1000e driver, the e1000e hardware can negotiate with my 1000 baseT/Full switch. Test result is as follow: -bash-3.00# ethtool eth0 Settings for eth0: Supported ports: [ TP ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Supports auto-negotiation: Yes Advertised link modes: 10baseT/Full 100baseT/Half 100baseT/Full Advertised auto-negotiation: Yes Speed: 100Mb/s Duplex: Full Port: Twisted Pair PHYAD: 1 Transceiver: internal Auto-negotiation: on Supports Wake-on: pumbag Wake-on: g Current message level: 0x00000001 (1) Link detected: yes I don't think it is related to which type of Ethernet. The ethtool always gets rid of two advertised link modes when setting 'autoneg on'. Because it works fine if I fix it as above code. Actually, we need to integrate the e1000e driver in our product. I had fixed it in our distribution. The correct result is as follow: Settings for eth0: Supported ports: [ TP ] Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Supports auto-negotiation: Yes Advertised link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Advertised auto-negotiation: Yes Speed: 1000Mb/s Duplex: Full Port: Twisted Pair PHYAD: 1 Transceiver: internal Auto-negotiation: on Supports Wake-on: pumbag Wake-on: g Current message level: 0x00000001 (1) Link detected: yes
>>err, according to this, we had the bug in 2.6.21 and then fixed it in >>2.6.23.9, so this is a report of an already fixed bug ;) >> >>Can you please clarify the version numbers here? Sorry, I test on 2.6.21 firstly. There is no the Latest working kernel version up till now. I don't know how to commit a patch for this bug though I had fixed it.
I think this bug no longer exists can you retest with e1000e and 2.6.27-rc8?
No response, closing