[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170906164217.GE15315@lunn.ch>
Date: Wed, 6 Sep 2017 18:42:17 +0200
From: Andrew Lunn <andrew@...n.ch>
To: Florian Fainelli <f.fainelli@...il.com>
Cc: Roopa Prabhu <roopa@...ulusnetworks.com>,
netdev <netdev@...r.kernel.org>,
Vivien Didelot <vivien.didelot@...oirfairelinux.com>,
Woojung.Huh@...rochip.com, jbe@...gutronix.de,
sean.wang@...iatek.com, john@...ozen.org
Subject: Re: [PATCH v2 rfc 0/8] IGMP snooping for local traffic
> >On the switch asics we work with, the driver has information if the
> >packet was
> >forwarded in hardware. This is per packet reason code telling why the
> >CPU is seeing the packet.
> >The driver can use this information to reset skb->offload_fwd_mark to
> >allow software forward.
> I am not positive this is universally available across different
> switch vendors.
It is not universally available. We cannot rely on it being available
with switches supported by DSA.
We have a few choices:
1) We assume anything the switch forwards to the CPU has also been
sent out whatever ports of the switch it needs to. Set
offload_fwd_mark.
2) We assume anything the switch forwards to the CPU has not gone
anywhere else, and the bridge needs to send it out whatever ports
it thinks. Don't set offload_fwd_mark.
3) We define some rules about what packets the switch should handle,
and then do some deep packet inspection to decide if
offload_fwd_mark should be set or not.
I don't see 3) being possible. We are dealing with a fixed silicon
data path, not something which is fully programmable.
So it is down to 1) or 2). I've been assuming 1), but maybe we need to
discuss that as well.
Andrew
Powered by blists - more mailing lists