From: John Crispin <john@phrozen.org> To: Andrew Lunn <andrew@lunn.ch>, Vivien Didelot <vivien.didelot@savoirfairelinux.com>, Florian Fainelli <f.fainelli@gmail.com>, "David S . Miller" <davem@davemloft.net>, Sean Wang <sean.wang@mediatek.com> Cc: netdev@vger.kernel.org, linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, Muciri Gatimu <muciri@openmesh.com>, Shashidhar Lakkavalli <shashidhar.lakkavalli@openmesh.com>, John Crispin <john@phrozen.org> Subject: [PATCH 2/4] net-next: dsa: add flow_dissect callback to struct dsa_device_ops Date: Wed, 9 Aug 2017 14:41:17 +0200 [thread overview] Message-ID: <20170809124119.24320-3-john@phrozen.org> (raw) In-Reply-To: <20170809124119.24320-1-john@phrozen.org> When the flow dissector first sees packets coming in on a DSA devices the 802.3 header wont be located where the code expects it to be as the tag is still present. Adding this new callback allows a DSA device to provide a new function that the flow_dissector can use to get the correct protocol and offset of the network header. Signed-off-by: Muciri Gatimu <muciri@openmesh.com> Signed-off-by: Shashidhar Lakkavalli <shashidhar.lakkavalli@openmesh.com> Signed-off-by: John Crispin <john@phrozen.org> --- include/net/dsa.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/net/dsa.h b/include/net/dsa.h index 65d7804c6f69..7f46b521313e 100644 --- a/include/net/dsa.h +++ b/include/net/dsa.h @@ -106,6 +106,8 @@ struct dsa_device_ops { struct sk_buff *(*rcv)(struct sk_buff *skb, struct net_device *dev, struct packet_type *pt, struct net_device *orig_dev); + int (*flow_dissect)(const struct sk_buff *skb, __be16 *proto, + int *offset); }; struct dsa_switch_tree { -- 2.11.0
WARNING: multiple messages have this Message-ID (diff)
From: John Crispin <john-Pj+rj9U5foFAfugRpC6u6w@public.gmane.org> To: Andrew Lunn <andrew-g2DYL2Zd6BY@public.gmane.org>, Vivien Didelot <vivien.didelot-4ysUXcep3aM1wj+D4I0NRVaTQe2KTcn/@public.gmane.org>, Florian Fainelli <f.fainelli-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>, "David S . Miller" <davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>, Sean Wang <sean.wang-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org> Cc: Muciri Gatimu <muciri-lv6y7wLVQPlWk0Htik3J/w@public.gmane.org>, netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Shashidhar Lakkavalli <shashidhar.lakkavalli-lv6y7wLVQPlWk0Htik3J/w@public.gmane.org>, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-mediatek-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, John Crispin <john-Pj+rj9U5foFAfugRpC6u6w@public.gmane.org> Subject: [PATCH 2/4] net-next: dsa: add flow_dissect callback to struct dsa_device_ops Date: Wed, 9 Aug 2017 14:41:17 +0200 [thread overview] Message-ID: <20170809124119.24320-3-john@phrozen.org> (raw) In-Reply-To: <20170809124119.24320-1-john-Pj+rj9U5foFAfugRpC6u6w@public.gmane.org> When the flow dissector first sees packets coming in on a DSA devices the 802.3 header wont be located where the code expects it to be as the tag is still present. Adding this new callback allows a DSA device to provide a new function that the flow_dissector can use to get the correct protocol and offset of the network header. Signed-off-by: Muciri Gatimu <muciri-lv6y7wLVQPlWk0Htik3J/w@public.gmane.org> Signed-off-by: Shashidhar Lakkavalli <shashidhar.lakkavalli-lv6y7wLVQPlWk0Htik3J/w@public.gmane.org> Signed-off-by: John Crispin <john-Pj+rj9U5foFAfugRpC6u6w@public.gmane.org> --- include/net/dsa.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/net/dsa.h b/include/net/dsa.h index 65d7804c6f69..7f46b521313e 100644 --- a/include/net/dsa.h +++ b/include/net/dsa.h @@ -106,6 +106,8 @@ struct dsa_device_ops { struct sk_buff *(*rcv)(struct sk_buff *skb, struct net_device *dev, struct packet_type *pt, struct net_device *orig_dev); + int (*flow_dissect)(const struct sk_buff *skb, __be16 *proto, + int *offset); }; struct dsa_switch_tree { -- 2.11.0
next prev parent reply other threads:[~2017-08-09 12:42 UTC|newest] Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-08-09 12:41 [PATCH 0/4] net-next: dsa: fix flow dissection John Crispin 2017-08-09 12:41 ` John Crispin 2017-08-09 12:41 ` [PATCH 1/4] net-next: dsa: move struct dsa_device_ops to the global header file John Crispin 2017-08-09 13:45 ` Andrew Lunn 2017-08-09 13:45 ` Andrew Lunn 2017-08-09 12:41 ` John Crispin [this message] 2017-08-09 12:41 ` [PATCH 2/4] net-next: dsa: add flow_dissect callback to struct dsa_device_ops John Crispin 2017-08-09 13:51 ` Andrew Lunn 2017-08-09 13:51 ` Andrew Lunn 2017-08-09 12:41 ` [PATCH 3/4] net-next: tag_mtk: add flow_dissect callback to the ops struct John Crispin 2017-08-09 13:54 ` Andrew Lunn 2017-08-09 12:41 ` [PATCH 4/4] net-next: dsa: fix flow dissection John Crispin 2017-08-09 12:41 ` John Crispin 2017-08-09 13:55 ` Andrew Lunn 2017-08-09 13:55 ` Andrew Lunn 2017-08-09 15:07 ` [PATCH 0/4] " Vivien Didelot 2017-08-09 15:07 ` Vivien Didelot 2017-08-10 5:52 ` David Miller 2017-08-10 6:42 ` Eric Dumazet 2017-08-10 7:40 ` John Crispin 2017-08-10 8:10 ` John Crispin
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20170809124119.24320-3-john@phrozen.org \ --to=john@phrozen.org \ --cc=andrew@lunn.ch \ --cc=davem@davemloft.net \ --cc=f.fainelli@gmail.com \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-mediatek@lists.infradead.org \ --cc=muciri@openmesh.com \ --cc=netdev@vger.kernel.org \ --cc=sean.wang@mediatek.com \ --cc=shashidhar.lakkavalli@openmesh.com \ --cc=vivien.didelot@savoirfairelinux.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.