• Fernando Luis Vázquez Cao's avatar
    IGMP snooping: set mrouters_only flag for IPv6 traffic properly · fc2af6c7
    Fernando Luis Vázquez Cao authored
    Upon reception of a MGM report packet the kernel sets the mrouters_only flag
    in a skb that is a clone of the original skb, which means that the bridge
    loses track of MGM packets (cb buffers are tied to a specific skb and not
    shared) and it ends up forwading join requests to the bridge interface.
    
    This can cause unexpected membership timeouts and intermitent/permanent loss
    of connectivity as described in RFC 4541 [2.1.1. IGMP Forwarding Rules]:
    
        A snooping switch should forward IGMP Membership Reports only to
        those ports where multicast routers are attached.
        [...]
        Sending membership reports to other hosts can result, for IGMPv1
        and IGMPv2, in unintentionally preventing a host from joining a
        specific multicast group.
    Signed-off-by: default avatarFernando Luis Vazquez Cao <fernando@oss.ntt.co.jp>
    Signed-off-by: default avatarDavid S. Miller <davem@conan.davemloft.net>
    fc2af6c7
br_multicast.c 40.4 KB