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💯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💯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>
This commit is contained in:
parent
0a5d1c55fa
commit
7c5df8fa19
|
@ -147,7 +147,6 @@ config MACVTAP
|
|||
config VXLAN
|
||||
tristate "Virtual eXtensible Local Area Network (VXLAN)"
|
||||
depends on INET
|
||||
select NET_IP_TUNNEL
|
||||
select NET_UDP_TUNNEL
|
||||
---help---
|
||||
This allows one to create vxlan virtual interfaces that provide
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -309,6 +309,7 @@ config NET_IPVTI
|
|||
|
||||
config NET_UDP_TUNNEL
|
||||
tristate
|
||||
select NET_IP_TUNNEL
|
||||
default n
|
||||
|
||||
config NET_FOU
|
||||
|
@ -321,6 +322,20 @@ config NET_FOU
|
|||
network mechanisms and optimizations for UDP (such as ECMP
|
||||
and RSS) can be leveraged to provide better service.
|
||||
|
||||
config GENEVE
|
||||
tristate "Generic Network Virtualization Encapsulation (Geneve)"
|
||||
depends on INET
|
||||
select NET_UDP_TUNNEL
|
||||
---help---
|
||||
This allows one to create Geneve virtual interfaces that provide
|
||||
Layer 2 Networks over Layer 3 Networks. Geneve is often used
|
||||
to tunnel virtual network infrastructure in virtualized environments.
|
||||
For more information see:
|
||||
http://tools.ietf.org/html/draft-gross-geneve-01
|
||||
|
||||
To compile this driver as a module, choose M here: the module
|
||||
|
||||
|
||||
config INET_AH
|
||||
tristate "IP: AH transformation"
|
||||
select XFRM_ALGO
|
||||
|
@ -453,20 +468,6 @@ config TCP_CONG_BIC
|
|||
increase provides TCP friendliness.
|
||||
See http://www.csc.ncsu.edu/faculty/rhee/export/bitcp/
|
||||
|
||||
config GENEVE
|
||||
tristate "Generic Network Virtualization Encapsulation (Geneve)"
|
||||
depends on INET
|
||||
select NET_IP_TUNNEL
|
||||
select NET_UDP_TUNNEL
|
||||
---help---
|
||||
This allows one to create Geneve virtual interfaces that provide
|
||||
Layer 2 Networks over Layer 3 Networks. Geneve is often used
|
||||
to tunnel virtual network infrastructure in virtualized environments.
|
||||
For more information see:
|
||||
http://tools.ietf.org/html/draft-gross-geneve-01
|
||||
|
||||
To compile this driver as a module, choose M here: the module
|
||||
|
||||
config TCP_CONG_CUBIC
|
||||
tristate "CUBIC TCP"
|
||||
default y
|
||||
|
|
Loading…
Reference in New Issue