• Jay Vosburgh's avatar
    bonding: Improve IGMP join processing · a816c7c7
    Jay Vosburgh authored
    	In active-backup mode, the current bonding code duplicates IGMP
    traffic to all slaves, so that switches are up to date in case of a
    failover from an active to a backup interface.  If bonding then fails
    back to the original active interface, it is likely that the "active
    slave" switch's IGMP forwarding for the port will be out of date until
    some event occurs to refresh the switch (e.g., a membership query).
    
    	This patch alters the behavior of bonding to no longer flood
    IGMP to all ports, and to issue IGMP JOINs to the newly active port at
    the time of a failover.  This insures that switches are kept up to date
    for all cases.
    
    	"GOELLESCH Niels" <niels.goellesch@eurocontrol.int> originally
    reported this problem, and included a patch.  His original patch was
    modified by Jay Vosburgh to additionally remove the existing IGMP flood
    behavior, use RCU, streamline code paths, fix trailing white space, and
    adjust for style.
    Signed-off-by: default avatarJay Vosburgh <fubar@us.ibm.com>
    Signed-off-by: default avatarJeff Garzik <jeff@garzik.org>
    a816c7c7
igmp.c 61.6 KB