[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20200624.144011.1350715546340588876.davem@davemloft.net>
Date: Wed, 24 Jun 2020 14:40:11 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: daniel@...que.org
Cc: netdev@...r.kernel.org, jcobham@...stertangent.com, andrew@...n.ch
Subject: Re: [PATCH v2] dsa: Allow forwarding of redirected IGMP traffic
From: Daniel Mack <daniel@...que.org>
Date: Sat, 20 Jun 2020 21:39:25 +0200
> The driver for Marvell switches puts all ports in IGMP snooping mode
> which results in all IGMP/MLD frames that ingress on the ports to be
> forwarded to the CPU only.
>
> The bridge code in the kernel can then interpret these frames and act
> upon them, for instance by updating the mdb in the switch to reflect
> multicast memberships of stations connected to the ports. However,
> the IGMP/MLD frames must then also be forwarded to other ports of the
> bridge so external IGMP queriers can track membership reports, and
> external multicast clients can receive query reports from foreign IGMP
> queriers.
>
> Currently, this is impossible as the EDSA tagger sets offload_fwd_mark
> on the skb when it unwraps the tagged frames, and that will make the
> switchdev layer prevent the skb from egressing on any other port of
> the same switch.
>
> To fix that, look at the To_CPU code in the DSA header and make
> forwarding of the frame possible for trapped IGMP packets.
>
> Introduce some #defines for the frame types to make the code a bit more
> comprehensive.
>
> This was tested on a Marvell 88E6352 variant.
>
> Signed-off-by: Daniel Mack <daniel@...que.org>
Applied, thank you.
Powered by blists - more mailing lists