• Mahesh Bandewar's avatar
    bonding: speed/duplex update at NETDEV_UP event · 4d2c0cda
    Mahesh Bandewar authored
    Some NIC drivers don't have correct speed/duplex settings at the
    time they send NETDEV_UP notification and that messes up the
    bonding state. Especially 802.3ad mode which is very sensitive
    to these settings. In the current implementation we invoke
    bond_update_speed_duplex() when we receive NETDEV_UP, however,
    ignore the return value. If the values we get are invalid
    (UNKNOWN), then slave gets removed from the aggregator with
    speed and duplex set to UNKNOWN while link is still marked as UP.
    
    This patch fixes this scenario. Also 802.3ad mode is sensitive to
    these conditions while other modes are not, so making sure that it
    doesn't change the behavior for other modes.
    Signed-off-by: default avatarMahesh Bandewar <maheshb@google.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    4d2c0cda
bond_main.c 134 KB