Description of problem: When changing the active slave in ALB/TLB modes in bonding, the previous active slave is left in unusable state and doesn't take part of the load sharing. Version-Release number of selected component (if applicable): kernel-2.4.20-1.1931.2.231.2.11.ent How reproducible: Create a bonding team with more than 2 slaves in either ALB or TLB modes, start traffic and change the active slave. Steps to Reproduce: 1. insmod bonding mode=5 2. ifconfig bond0 <ip-addr> 3. ifenslave bond0 eth0 eth1 eth2 4. run traffic 5. ifenslave -c bond0 eth1 (supposing eth0 was the original active) Actual results: eth1 is now the active interface but eth0 no longer transmits/receives. Expected results: eth1 is now the active interface and eth0 still takes part of the load sharing. Additional info: A bug fix patch was sent by me on July 1st to bond-devel and linux-netdev lists - "[patch][bonding] Fix change active for ALB/TLB". To the best of my knowledge at time of submitting this, it was not yet accepted in to Jeff's net- drivers-2.4 BK tree.
Appears to be fix implemented in RHEL 3 B1 candidate kernel (version 2.4.21- 1.1931.2.349.2.2.ent).