• Vladimir Oltean's avatar
    net: dsa: remove workarounds for changing master promisc/allmulti only while up · 35aae5ab
    Vladimir Oltean authored
    Lennert Buytenhek explains in commit df02c6ff ("dsa: fix master
    interface allmulti/promisc handling"), dated Nov 2008, that changing the
    promiscuity of interfaces that are down (here the master) is broken.
    
    This fact regarding promisc/allmulti has changed since commit
    b6c40d68 ("net: only invoke dev->change_rx_flags when device is UP")
    by Vlad Yasevich, dated Nov 2013.
    
    Therefore, DSA now has unnecessary complexity to handle master state
    transitions from down to up. In fact, syncing the unicast and multicast
    addresses can happen completely asynchronously to the administrative
    state changes.
    
    This change reduces that complexity by effectively fully reverting
    commit df02c6ff ("dsa: fix master interface allmulti/promisc
    handling").
    Signed-off-by: default avatarVladimir Oltean <vladimir.oltean@nxp.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    35aae5ab
slave.c 65.1 KB