From: "lewis_zyxel" <lachang.li@zyxel.com.tw>
To: <linux-kernel@vger.kernel.org>
Subject: 2 ports could not bond to a aggregator in 802.3ad mode issue
Date: Tue, 25 Dec 2007 15:40:30 +0800 [thread overview]
Message-ID: <001201c846c9$6d03de40$431a17ac@ZyXEL.com> (raw)
I wish to be personally CC'ed the answers/comments posted to the list in
response to my posting.
I have 2 ports(eth0, eth1) in my device. I use kernel(2.6.23) bonding driver
v3.1.3 (June 13, 2007) to bond 2 ports to one aggregator and use the
following commands to setup the environment:
insmod ./bonding.ko mode=4 miimon=100
ifconfig bond0 172.23.26.223 netmask 255.255.255.0
ifconfig eth0 down
ifconfig eth1 down
ifenslave bond0 eth0 eth1
After the setting, I cat the proc entry and got the following information
Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
802.3ad info
LACP rate: slow
Active Aggregator Info:
Aggregator ID: 1
Number of ports: 1
Actor Key: 17
Partner Key: 1
Partner Mac Address: 00:00:00:00:00:00
Slave Interface: eth0
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:e0:0c:48:00:04
Aggregator ID: 1
Slave Interface: eth1
MII Status: up
Link Failure Count: 0
Permanent HW addr: 6f:74:66:73:74:79
Aggregator ID: 2
It shows that 2 ports could not bond to a aggregator. After I trace the the
bonding driver code, I modify the ad_port_selection_logic() in bond_3ad.c as
following:
- ((MAC_ADDRESS_COMPARE(&(port->partner_oper_system), &(null_mac_addr)) &&
// partner answers
+ (!(MAC_ADDRESS_COMPARE(&(port->partner_oper_system), &(null_mac_addr)) &&
// partner answers
!aggregator->is_individual) // but is not individual OR
)
After the modification, I cat the proc entry again and the result is as
following:
/home/shares # cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.1.3 (June 13, 2007)
Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
802.3ad info
LACP rate: slow
Active Aggregator Info:
Aggregator ID: 1
Number of ports: 2
Actor Key: 17
Partner Key: 1
Partner Mac Address: 00:00:00:00:00:00
Slave Interface: eth0
MII Status: up
Link Failure Count: 0
Permanent HW addr: 00:e0:0c:48:00:04
Aggregator ID: 1
Slave Interface: eth1
MII Status: up
Link Failure Count: 0
Permanent HW addr: 6f:74:66:73:74:79
Aggregator ID: 1
The behavior changes from 'one aggregator with one port' to 'one aggregator
with 2 ports', the latter seems more accurate. Is there a bug in bonding
driver code v3.1.3 (June 13, 2007)?
Best regards,
Lewis Li
next reply other threads:[~2007-12-25 7:56 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-25 7:40 lewis_zyxel [this message]
[not found] ` <20071226141301.8231163b.akpm@linux-foundation.org>
2007-12-26 22:47 ` 2 ports could not bond to a aggregator in 802.3ad mode issue Jay Vosburgh
2007-12-27 2:48 ` Lewis Li
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='001201c846c9$6d03de40$431a17ac@ZyXEL.com' \
--to=lachang.li@zyxel.com.tw \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.