summaryrefslogtreecommitdiff
path: root/net/ethernet
diff options
context:
space:
mode:
authorVeaceslav Falico <vfalico@redhat.com>2013-08-29 01:25:10 +0400
committerDavid S. Miller <davem@davemloft.net>2013-08-30 00:19:42 +0400
commit27bc11e63888c7cb0bd6d443e98775254cf7dbdd (patch)
treea0d7787f1a187f6bd0f949a8bf5bc511537dbf10 /net/ethernet
parentc752af2c555617017dbb3a66f81e974b66ad5e2d (diff)
downloadlinux-27bc11e63888c7cb0bd6d443e98775254cf7dbdd.tar.xz
bonding: make bond_arp_send_all use upper device list
Currently, bond_arp_send_all() is aware only of vlans, which breaks configurations like bond <- bridge (or any other 'upper' device) with IP (which is quite a common scenario for virt setups). To fix this we convert the bond_arp_send_all() to first verify if the rt device is the bond itself, and if not - to go through its list of upper vlans and their respectiv upper devices (if the vlan's upper device matches - tag the packet), if still not found - go through all of our upper list devices to see if any of them match the route device for the target. If the match is a vlan device - we also save its vlan_id and tag it in bond_arp_send(). Also, clean the function a bit to be more readable. CC: Vlad Yasevich <vyasevic@redhat.com> CC: Jay Vosburgh <fubar@us.ibm.com> CC: Andy Gospodarek <andy@greyhouse.net> Signed-off-by: Veaceslav Falico <vfalico@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ethernet')
0 files changed, 0 insertions, 0 deletions