diff options
author | Vlad Yasevich <vyasevic@redhat.com> | 2014-06-04 16:23:38 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-06-04 15:13:54 -0700 |
commit | 14af9963ba1e5e8400c9de9267bdcab895109f6a (patch) | |
tree | 55e2be9506708df787f2158e11454b8ac2b7c36a /drivers/net/bonding/bond_main.c | |
parent | 4c9912556867bf89e7bb6946fd218a40b1d12139 (diff) | |
download | op-kernel-dev-14af9963ba1e5e8400c9de9267bdcab895109f6a.zip op-kernel-dev-14af9963ba1e5e8400c9de9267bdcab895109f6a.tar.gz |
bonding: Support macvlans on top of tlb/rlb mode bonds
To make TLB mode work, the patch allows learning packets
to be sent using mac addresses assigned to macvlan devices,
also taking into an account vlans that may be between the
bond and macvlan device.
To make RLB work, all we have to do is accept ARP packets
for addresses added to the bond dev->uc list. Since RLB
mode will take care to update the peers directly with
correct mac addresses, learning packets for these addresses
do not have be send to switch.
Signed-off-by: Vlad Yasevich <vyasevic@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bonding/bond_main.c')
-rw-r--r-- | drivers/net/bonding/bond_main.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c index a89bf18..04f35f9 100644 --- a/drivers/net/bonding/bond_main.c +++ b/drivers/net/bonding/bond_main.c @@ -2206,9 +2206,9 @@ static void bond_arp_send(struct net_device *slave_dev, int arp_op, * When the path is validated, collect any vlan information in the * path. */ -static bool bond_verify_device_path(struct net_device *start_dev, - struct net_device *end_dev, - struct bond_vlan_tag *tags) +bool bond_verify_device_path(struct net_device *start_dev, + struct net_device *end_dev, + struct bond_vlan_tag *tags) { struct net_device *upper; struct list_head *iter; |