[ovs-dev] [PATCH v2] IGMPv3 support

Ben Pfaff blp at nicira.com
Tue Jun 16 15:16:33 UTC 2015


On Mon, Jun 08, 2015 at 01:05:41PM -0300, Thadeu Lima de Souza Cascardo wrote:
> Support IGMPv3 messages with multiple records. Make sure all IGMPv3
> messages go through slow path, since they may carry multiple multicast
> addresses, unlike IGMPv2.
> 
> Tests done:
> 
> * multiple addresses in IGMPv3 report are inserted in mdb;
> * address is removed from IGMPv3 if record is INCLUDE_MODE;
> * reports sent on a burst with same flow all go to userspace;
> * IGMPv3 reports go to mrouters, i.e., ports that have issued a query.
> 
> Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo at redhat.com>

Thanks!  I have a few comments.

I am surprised that igmpv3_header in packets.h is marked OVS_PACKED,
because it looks like all of the fields are naturally aligned.  Does
this structure need to be packed?

Similarly for igmpv3_record.  However, in this struct I would also
change 'maddr' from ovs_be32 to ovs_16aligned_be32, because there are
situations where packet headers can be aligned on an odd 16-bit boundary
and using ovs_16aligned_be32 makes it easier to handle that safely on
RISC architectures.



More information about the dev mailing list