Re: [PATCH] bridge: fix parsing of MLDv2 reports

From: Cong Wang
Date: Fri May 22 2015 - 12:37:28 EST


On Fri, May 22, 2015 at 8:18 AM, Thadeu Lima de Souza Cascardo
<cascardo@xxxxxxxxxx> wrote:
> When more than a multicast address is present in a MLDv2 report, all but
> the first address is ignored, because the code breaks out of the loop if
> there has not been an error adding that address.
>
> This has caused failures when two guests connected through the bridge
> tried to communicate using IPv6. Neighbor discoveries would not be
> transmitted to the other guest when both used a link-local address and a
> static address.
>
> This only happens when there is a MLDv2 querier in the network.
>
> The fix will only break out of the loop when there is a failure adding a
> multicast address.
>
> The mdb before the patch:
>
> dev ovirtmgmt port vnet0 grp ff02::1:ff7d:6603 temp
> dev ovirtmgmt port vnet1 grp ff02::1:ff7d:6604 temp
> dev ovirtmgmt port bond0.86 grp ff02::2 temp
>
> After the patch:
>
> dev ovirtmgmt port vnet0 grp ff02::1:ff7d:6603 temp
> dev ovirtmgmt port vnet1 grp ff02::1:ff7d:6604 temp
> dev ovirtmgmt port bond0.86 grp ff02::fb temp
> dev ovirtmgmt port bond0.86 grp ff02::2 temp
> dev ovirtmgmt port bond0.86 grp ff02::d temp
> dev ovirtmgmt port vnet0 grp ff02::1:ff00:76 temp
> dev ovirtmgmt port bond0.86 grp ff02::16 temp
> dev ovirtmgmt port vnet1 grp ff02::1:ff00:77 temp
> dev ovirtmgmt port bond0.86 grp ff02::1:ff00:def temp
> dev ovirtmgmt port bond0.86 grp ff02::1:ffa1:40bf temp
>
> Reported-by: Rik Theys <Rik.Theys@xxxxxxxxxxxxxxxx>
> Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@xxxxxxxxxx>
> Tested-by: Rik Theys <Rik.Theys@xxxxxxxxxxxxxxxx>


Fixes: 08b202b67264 ("bridge br_multicast: IPv6 MLD support.")

Good catch!
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/