summaryrefslogtreecommitdiffstats
path: root/include/net/geneve.h
diff options
context:
space:
mode:
authorHannes Frederic Sowa2016-04-18 21:19:48 +0200
committerDavid S. Miller2016-04-21 21:35:44 +0200
commit681e683ff30ada19f73c17c38a528528dd8824f1 (patch)
treedfb1140e166ecf89f994f667e0cb9e73969845e8 /include/net/geneve.h
parentvxlan: break dependency with netdev drivers (diff)
downloadkernel-qcow2-linux-681e683ff30ada19f73c17c38a528528dd8824f1.tar.gz
kernel-qcow2-linux-681e683ff30ada19f73c17c38a528528dd8824f1.tar.xz
kernel-qcow2-linux-681e683ff30ada19f73c17c38a528528dd8824f1.zip
geneve: break dependency with netdev drivers
Equivalent to "vxlan: break dependency with netdev drivers", don't autoload geneve module in case the driver is loaded. Instead make the coupling weaker by using netdevice notifiers as proxy. Cc: Jesse Gross <jesse@kernel.org> Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/geneve.h')
-rw-r--r--include/net/geneve.h6
1 files changed, 2 insertions, 4 deletions
diff --git a/include/net/geneve.h b/include/net/geneve.h
index e6c23dc765f7..cb544a530146 100644
--- a/include/net/geneve.h
+++ b/include/net/geneve.h
@@ -62,13 +62,11 @@ struct genevehdr {
struct geneve_opt options[];
};
-#if IS_ENABLED(CONFIG_GENEVE)
-void geneve_get_rx_port(struct net_device *netdev);
-#else
static inline void geneve_get_rx_port(struct net_device *netdev)
{
+ ASSERT_RTNL();
+ call_netdevice_notifiers(NETDEV_OFFLOAD_PUSH_GENEVE, netdev);
}
-#endif
#ifdef CONFIG_INET
struct net_device *geneve_dev_create_fb(struct net *net, const char *name,