The LAN9303 switches use a DSA tag placed before the EtherType, so they
displace all headers that follow afterwards. Call the generic flow
dissector procedure so that this is accounted for.

Cc: Juergen Beisert <j...@pengutronix.de>
Cc: Egil Hjelmeland <pri...@egil-hjelmeland.no>
Signed-off-by: Vladimir Oltean <vladimir.olt...@nxp.com>
---
 net/dsa/tag_lan9303.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/net/dsa/tag_lan9303.c b/net/dsa/tag_lan9303.c
index ccfb6f641bbf..94e3808500d9 100644
--- a/net/dsa/tag_lan9303.c
+++ b/net/dsa/tag_lan9303.c
@@ -135,6 +135,7 @@ static const struct dsa_device_ops lan9303_netdev_ops = {
        .xmit = lan9303_xmit,
        .rcv = lan9303_rcv,
        .overhead = LAN9303_TAG_LEN,
+       .flow_dissect = dsa_tag_generic_flow_dissect,
 };
 
 MODULE_LICENSE("GPL");
-- 
2.25.1

Reply via email to