summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Hurley <john.hurley@netronome.com>2018-11-07 18:32:48 +0000
committerDavid S. Miller <davem@davemloft.net>2018-11-07 23:00:23 -0800
commit1d10bd167667655362a7e2b407a96aad5979bfca (patch)
tree3cfbd2c54d0bedfffe0eaf438b2534155ec4cd3e
parentcea0604d3f94ef41878d6e484ffeb67a8129ab5a (diff)
downloadlwn-1d10bd167667655362a7e2b407a96aad5979bfca.tar.gz
lwn-1d10bd167667655362a7e2b407a96aad5979bfca.zip
net: add netif_is_geneve()
Add a helper function to determine if the type of a netdev is geneve based on its rtnl_link_ops. This allows drivers that may wish to offload tunnels to check the underlying type of the device. A recent patch added a similar helper to vxlan.h Signed-off-by: John Hurley <john.hurley@netronome.com> Reviewed-by: Jakub Kicinski <jakub.kicinski@netronome.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--include/net/geneve.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/net/geneve.h b/include/net/geneve.h
index a7600ed55ea3..fc6a7e0a874a 100644
--- a/include/net/geneve.h
+++ b/include/net/geneve.h
@@ -60,6 +60,12 @@ struct genevehdr {
struct geneve_opt options[];
};
+static inline bool netif_is_geneve(const struct net_device *dev)
+{
+ return dev->rtnl_link_ops &&
+ !strcmp(dev->rtnl_link_ops->kind, "geneve");
+}
+
#ifdef CONFIG_INET
struct net_device *geneve_dev_create_fb(struct net *net, const char *name,
u8 name_assign_type, u16 dst_port);