Bug 677902 - Incorrect "Speed" is recorded in the file "/proc/net/bonding/bondX"
Summary: Incorrect "Speed" is recorded in the file "/proc/net/bonding/bondX"
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel
Version: 5.6
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: rc
: ---
Assignee: Andy Gospodarek
QA Contact: Boris Ranto
URL:
Whiteboard:
: 672501 (view as bug list)
Depends On:
Blocks: 590060
TreeView+ depends on / blocked
 
Reported: 2011-02-16 08:51 UTC by Jaylin Zhou
Modified: 2018-11-29 20:53 UTC (History)
16 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-07-21 10:15:27 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Knowledge Base (Legacy) 46186 0 None None None Never
Red Hat Knowledge Base (Solution) 46186 0 None None None Never
Red Hat Product Errata RHSA-2011:1065 0 normal SHIPPED_LIVE Important: Red Hat Enterprise Linux 5.7 kernel security and bug fix update 2011-07-21 09:21:37 UTC

Description Jaylin Zhou 2011-02-16 08:51:15 UTC
Description of problem:
Incorrect "Speed" is recorded in the file "/proc/net/bonding/bondX"

Version-Release number of selected component (if applicable):
RHEL5u6

How reproducible:
Maybe all the RHEL5u6 systems

Steps to Reproduce:
1. Make bond1 device by using eth2 and eth6 (mode 1).
2.
# ethtool eth2 | grep Speed
Speed: 1000Mb/s

# ethtool eth6 | grep Speed
Speed: 1000Mb/s 

3.
# cat /proc/net/bonding/bond1
Ethernet Channel Bonding Driver: v3.4.0-1 (October 7, 2008)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: eth2 (primary_reselect always)
Currently Active Slave: eth2
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 5000
Down Delay (ms): 0

Slave Interface: eth2
MII Status: up
Speed: 100 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: XX:XX:XX:XX:XX:XX

Slave Interface: eth6
MII Status: up
Speed: 100 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: YY:YY:YY:YY:YY:YY
 
Actual results:
Speed: 100 Mbps

Expected results:
Speed: 1000 Mbps

Comment 5 Andy Gospodarek 2011-02-25 22:28:18 UTC
Do you also see a message in your log that says something like this:

Warning: failed to get speed and duplex from eth2, assumed to be 100Mb/sec and Full.

It is likely that your devices that do not report link-speed before they go 'up' and the speed values are never updated.

Comment 10 Andy Gospodarek 2011-03-24 13:29:05 UTC
My test kernels have been updated to include a patch for this bugzilla.
Please test them and report back your results.

http://people.redhat.com/agospoda/#rhel5

Comment 18 RHEL Program Management 2011-03-30 19:59:32 UTC
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release.  Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products.  This request is not yet committed for inclusion in an Update
release.

Comment 20 Jarod Wilson 2011-04-08 16:26:07 UTC
Patch(es) available in kernel-2.6.18-256.el5
You can download this test kernel (or newer) from http://people.redhat.com/jwilson/el5
Detailed testing feedback is always welcomed.

Comment 23 Andy Gospodarek 2011-05-05 01:14:43 UTC
*** Bug 672501 has been marked as a duplicate of this bug. ***

Comment 24 masanari iida 2011-05-11 08:45:05 UTC
My colleague tested this on 2.6.18-238(affected) and
2.6.18-259(Fixed) and confirmed the symptom is fixed.
Thank you.

 uname -a
Linux localhost.localdomain 2.6.18-259.el5 #1 SMP Fri Apr 29 01:09:57 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux
#

# ethtool  eth1
Settings for eth1:
        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   <--- 1Gbps
        Duplex: Full
        Port: Twisted Pair
        PHYAD: 1
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: g
        Wake-on: g
        Link detected: yes

# cat /proc/net/bonding/bond0 
Ethernet Channel Bonding Driver: v3.4.0-1 (October 7, 2008)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth1
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 5000
Down Delay (ms): 0

Slave Interface: eth1
MII Status: up
Speed: 1000 Mbps   <--- 1Gbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: xx:xx:xx:xx:xx:xx

Slave Interface: eth2
MII Status: down
Speed: 100 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: xx:xx:xx:xx:xx:xx

Comment 26 Gabrio Barbieri 2011-07-11 21:29:24 UTC
(In reply to comment #5)
> Do you also see a message in your log that says something like this:
> 
> Warning: failed to get speed and duplex from eth2, assumed to be 100Mb/sec and
> Full.
> 
> It is likely that your devices that do not report link-speed before they go
> 'up' and the speed values are never updated.


Have a customer with the same problem, except that we're testing a newer kernel (2.6.18-262.el5) and the problem is still there, he's setting the link speed to 5Gbps and seeing 100Mbps on the bondX file.

Can this be caused by the network driver not providing the right information to the bonding driver when it goes up? See /var/log/messages below.

(date is not set correctly on the system yet so reflects March but it's actually from July 11th)

[root bonding]# cat bond0
Ethernet Channel Bonding Driver: 
v3.4.0-1 (October 7, 2008)
Bonding Mode: fault-tolerance (active-backup)
Primary Slave: 
None
Currently Active Slave: eth0
MII Status: up
MII Polling Interval 
(ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
Slave Interface: eth0
MII Status: up
Speed: 100 Mbps
Duplex: 
full
Link Failure Count: 0
Permanent HW addr: xx:xx:xx:xx:xx:xx
Slave Interface: eth1
MII Status: up
Speed: 100 Mbps
Duplex: 
full
Link Failure Count: 0
Permanent HW addr: 
98:4b:e1:62:84:74
[root@ium1to5oss bonding]#


/var/log/messages
Mar 14 22:52:06 localhost.localdomain kernel: Linux version 2.6.18-262.el5 (mockbuild.bos.redhat.com) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-50)) #1 SMP Mon May 16 17:49:03 EDT 2011




Mar 14 23:12:26 localhost.localdomain kernel: bonding: bond0: Warning: failed to get speed and duplex from eth0, assumed to be 100Mb/sec and Full.

Comment 27 Andy Gospodarek 2011-07-15 01:58:06 UTC
Gabrio, the problem is purely cosmetic.  I has absolutely no impact on the rate at which the bonding driver can send and receive traffic.

The bonding driver isn't setup to properly recognize speeds that aren't factors of 10, so a small change has to be made to work with devices like this one that can be setup with speeds like 2.5Gbps and 5Gbps.

Comment 28 errata-xmlrpc 2011-07-21 10:15:27 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHSA-2011-1065.html


Note You need to log in before you can comment on or make changes to this bug.