• Jiri Bohac's avatar
    bonding: 802.3ad: make aggregator_identifier bond-private · 4380aafd
    Jiri Bohac authored
    [ Upstream commit 163c8ff30dbe473abfbb24a7eac5536c87f3baa9 ]
    
    aggregator_identifier is used to assign unique aggregator identifiers
    to aggregators of a bond during device enslaving.
    
    aggregator_identifier is currently a global variable that is zeroed in
    bond_3ad_initialize().
    
    This sequence will lead to duplicate aggregator identifiers for eth1 and eth3:
    
    create bond0
    change bond0 mode to 802.3ad
    enslave eth0 to bond0 		//eth0 gets agg id 1
    enslave eth1 to bond0 		//eth1 gets agg id 2
    create bond1
    change bond1 mode to 802.3ad
    enslave eth2 to bond1		//aggregator_identifier is reset to 0
    				//eth2 gets agg id 1
    enslave eth3 to bond0 		//eth3 gets agg id 2
    
    Fix this by making aggregator_identifier private to the bond.
    Signed-off-by: 's avatarJiri Bohac <jbohac@suse.cz>
    Acked-by: 's avatarVeaceslav Falico <vfalico@redhat.com>
    Signed-off-by: 's avatarDavid S. Miller <davem@davemloft.net>
    Signed-off-by: 's avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    4380aafd
Name
Last commit
Last update
..
appletalk Loading commit data...
arcnet Loading commit data...
bonding Loading commit data...
caif Loading commit data...
can Loading commit data...
cris Loading commit data...
dsa Loading commit data...
ethernet Loading commit data...
fddi Loading commit data...
hamradio Loading commit data...
hippi Loading commit data...
hyperv Loading commit data...
ieee802154 Loading commit data...
irda Loading commit data...
phy Loading commit data...
plip Loading commit data...
ppp Loading commit data...
slip Loading commit data...
team Loading commit data...
usb Loading commit data...
vmxnet3 Loading commit data...
wan Loading commit data...
wimax Loading commit data...
wireless Loading commit data...
xen-netback Loading commit data...
Kconfig Loading commit data...
LICENSE.SRC Loading commit data...
Makefile Loading commit data...
Space.c Loading commit data...
dummy.c Loading commit data...
eql.c Loading commit data...
ifb.c Loading commit data...
loopback.c Loading commit data...
macvlan.c Loading commit data...
macvtap.c Loading commit data...
mdio.c Loading commit data...
mii.c Loading commit data...
netconsole.c Loading commit data...
ntb_netdev.c Loading commit data...
rionet.c Loading commit data...
sb1000.c Loading commit data...
sungem_phy.c Loading commit data...
tun.c Loading commit data...
veth.c Loading commit data...
virtio_net.c Loading commit data...
vxlan.c Loading commit data...
xen-netfront.c Loading commit data...