diff mbox series

[ovs-dev] ofproto:ipv6 mld report error send to fports

Message ID 20200919024601.62728-1-dingxiaoxiong@huawei.com
State Changes Requested
Headers show
Series [ovs-dev] ofproto:ipv6 mld report error send to fports | expand

Commit Message

XiaoXiong Ding Sept. 19, 2020, 2:46 a.m. UTC
When mld report come(same as mld done), will do funciton
xlate_normal_mcast_send_rports, and because of no return,
will do forwarding to group base ports logic, and if
other_config:mcast-snooping-flood is set on a port, will do
xlate_normal_mcast_send_fports. So mld report will be reveived
when xlate_normal_mcast_send_fports is set on a port, whether
xlate_normal_mcast_send_fports is set or not.
but ipv4 is ok.

Fixes: 06994f879c ("mcast-snooping: Add Multicast Listener Discovery support")
Signed-off-by: XiaoXiong Ding <dingxiaoxiong@huawei.com>
---
 ofproto/ofproto-dpif-xlate.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Flavio Leitner Sept. 21, 2020, 4:09 p.m. UTC | #1
Hi,

Thanks for the patch.

On Sat, Sep 19, 2020 at 10:46:01AM +0800, XiaoXiong Ding wrote:
> When mld report come(same as mld done), will do funciton

function

> xlate_normal_mcast_send_rports, and because of no return,
> will do forwarding to group base ports logic, and if
> other_config:mcast-snooping-flood is set on a port, will do
> xlate_normal_mcast_send_fports. So mld report will be reveived

received?

> when xlate_normal_mcast_send_fports is set on a port, whether
> xlate_normal_mcast_send_fports is set or not.
> but ipv4 is ok.

Use capital after period. Perhaps replace that with a line saying:

"IPv4 does not have this issue."

Alternatively, the call chain described above is visible in the
code so there should be no need to describe that the commit log.

However, the problem itself is not much clear. Perhaps the
problem description could be more like:

"
 According with rfc4541 section 2.1.1, a snooping switch should
 forward membership reports only to ports with routers attached.

 The current code violates the RFC forwarding membership reports
 to group ports as well.

 The same issue doesn't exist with IPv4.
"

What do you think?

Thanks,
fbl

> 
> Fixes: 06994f879c ("mcast-snooping: Add Multicast Listener Discovery support")
> Signed-off-by: XiaoXiong Ding <dingxiaoxiong@huawei.com>
> ---
>  ofproto/ofproto-dpif-xlate.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/ofproto/ofproto-dpif-xlate.c b/ofproto/ofproto-dpif-xlate.c
> index e0ede2cab..47571e790 100644
> --- a/ofproto/ofproto-dpif-xlate.c
> +++ b/ofproto/ofproto-dpif-xlate.c
> @@ -3100,6 +3100,7 @@ xlate_normal(struct xlate_ctx *ctx)
>                  xlate_report(ctx, OFT_DETAIL, "MLD query, flooding");
>                  xlate_normal_flood(ctx, in_xbundle, &xvlan);
>              }
> +            return;
>          } else {
>              if (is_ip_local_multicast(flow, wc)) {
>                  /* RFC4541: section 2.1.2, item 2: Packets with a dst IP
> -- 
> 2.14.1.windows.1
>
diff mbox series

Patch

diff --git a/ofproto/ofproto-dpif-xlate.c b/ofproto/ofproto-dpif-xlate.c
index e0ede2cab..47571e790 100644
--- a/ofproto/ofproto-dpif-xlate.c
+++ b/ofproto/ofproto-dpif-xlate.c
@@ -3100,6 +3100,7 @@  xlate_normal(struct xlate_ctx *ctx)
                 xlate_report(ctx, OFT_DETAIL, "MLD query, flooding");
                 xlate_normal_flood(ctx, in_xbundle, &xvlan);
             }
+            return;
         } else {
             if (is_ip_local_multicast(flow, wc)) {
                 /* RFC4541: section 2.1.2, item 2: Packets with a dst IP