diff options
author | John Crispin <john@phrozen.org> | 2017-08-09 15:41:17 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-08-10 08:51:47 +0300 |
commit | 598a968011ffc4d624934995fe46d06bd450cdf4 (patch) | |
tree | 2d0f718a04615ed23d4350f68ae2559bcb1f610f | |
parent | 68277a2c9d32fd9090247a5c08aaf1353049c0b1 (diff) | |
download | linux-598a968011ffc4d624934995fe46d06bd450cdf4.tar.xz |
net-next: dsa: add flow_dissect callback to struct dsa_device_ops
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>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | include/net/dsa.h | 2 |
1 files changed, 2 insertions, 0 deletions
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 { |