summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorAndy Zhou <azhou@nicira.com>2014-10-07 00:15:14 +0200
committerDavid S. Miller <davem@davemloft.net>2014-10-07 06:10:49 +0200
commit7c5df8fa1921450d2210db9928f43cf4f414982c (patch)
treec07aad48037b63739a302aaf27604f780809440b /include
parentopenvswitch: fix a sparse warning (diff)
downloadlinux-7c5df8fa1921450d2210db9928f43cf4f414982c.tar.xz
linux-7c5df8fa1921450d2210db9928f43cf4f414982c.zip
openvswitch: fix a compilation error when CONFIG_INET is not setW!
Fix a openvswitch compilation error when CONFIG_INET is not set: ===================================================== In file included from include/net/geneve.h:4:0, from net/openvswitch/flow_netlink.c:45: include/net/udp_tunnel.h: In function 'udp_tunnel_handle_offloads': >> include/net/udp_tunnel.h:100:2: error: implicit declaration of function 'iptunnel_handle_offloads' [-Werror=implicit-function-declaration] >> return iptunnel_handle_offloads(skb, udp_csum, type); >> ^ >> >> include/net/udp_tunnel.h:100:2: warning: return makes pointer from integer without a cast >> >> cc1: some warnings being treated as errors ===================================================== Reported-by: kbuild test robot <fengguang.wu@intel.com> Signed-off-by: Andy Zhou <azhou@nicira.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r--include/net/geneve.h36
1 files changed, 21 insertions, 15 deletions
diff --git a/include/net/geneve.h b/include/net/geneve.h
index ce98865318bf..112132cf8e2e 100644
--- a/include/net/geneve.h
+++ b/include/net/geneve.h
@@ -1,22 +1,10 @@
#ifndef __NET_GENEVE_H
#define __NET_GENEVE_H 1
+#ifdef CONFIG_INET
#include <net/udp_tunnel.h>
+#endif
-struct geneve_sock;
-
-typedef void (geneve_rcv_t)(struct geneve_sock *gs, struct sk_buff *skb);
-
-struct geneve_sock {
- struct hlist_node hlist;
- geneve_rcv_t *rcv;
- void *rcv_data;
- struct work_struct del_work;
- struct socket *sock;
- struct rcu_head rcu;
- atomic_t refcnt;
- struct udp_offload udp_offloads;
-};
/* Geneve Header:
* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
@@ -74,6 +62,22 @@ struct genevehdr {
struct geneve_opt options[];
};
+#ifdef CONFIG_INET
+struct geneve_sock;
+
+typedef void (geneve_rcv_t)(struct geneve_sock *gs, struct sk_buff *skb);
+
+struct geneve_sock {
+ struct hlist_node hlist;
+ geneve_rcv_t *rcv;
+ void *rcv_data;
+ struct work_struct del_work;
+ struct socket *sock;
+ struct rcu_head rcu;
+ atomic_t refcnt;
+ struct udp_offload udp_offloads;
+};
+
#define GENEVE_VER 0
#define GENEVE_BASE_HLEN (sizeof(struct udphdr) + sizeof(struct genevehdr))
@@ -88,4 +92,6 @@ int geneve_xmit_skb(struct geneve_sock *gs, struct rtable *rt,
__u8 ttl, __be16 df, __be16 src_port, __be16 dst_port,
__be16 tun_flags, u8 vni[3], u8 opt_len, u8 *opt,
bool xnet);
-#endif
+#endif /*ifdef CONFIG_INET */
+
+#endif /*ifdef__NET_GENEVE_H */