Re: [PATCH net-next v1 1/9] net: dsa: add rcv_post call back
From: Vladimir Oltean <olteanv@gmail.com>
Date: 2021-04-03 14:06:28
Also in:
lkml, netdev
From: Vladimir Oltean <olteanv@gmail.com>
Date: 2021-04-03 14:06:28
Also in:
lkml, netdev
On Sat, Apr 03, 2021 at 01:48:40PM +0200, Oleksij Rempel wrote:
Some switches (for example ar9331) do not provide enough information about forwarded packets. If the switch decision was made based on IPv4 or IPv6 header, we need to analyze it and set proper flag. Potentially we can do it in existing rcv path, on other hand we can avoid part of duplicated work and let the dsa framework set skb header pointers and then use preprocessed skb one step later withing the rcv_post call back. This patch is needed for ar9331 switch. Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> ---
I don't necessarily disagree with this, perhaps we can even move Florian's dsa_untag_bridge_pvid() call inside a rcv_post() method implemented by the DSA_TAG_PROTO_BRCM_LEGACY, DSA_TAG_PROTO_BRCM_PREPEND and DSA_TAG_PROTO_BRCM taggers. Or even better, because Oleksij's rcv_post is already prototype-compatible with dsa_untag_bridge_pvid, we can already do: .rcv_post = dsa_untag_bridge_pvid, This should be generally useful for stuff that DSA taggers need to do which is easiest done after eth_type_trans() was called.