diff options
Diffstat (limited to 'net/ipv6/protocol.c')
| -rw-r--r-- | net/ipv6/protocol.c | 20 | 
1 files changed, 12 insertions, 8 deletions
diff --git a/net/ipv6/protocol.c b/net/ipv6/protocol.c index f7c53a7d5cb..22d1bd4670d 100644 --- a/net/ipv6/protocol.c +++ b/net/ipv6/protocol.c @@ -25,8 +25,9 @@  #include <linux/spinlock.h>  #include <net/protocol.h> +#if IS_ENABLED(CONFIG_IPV6)  const struct inet6_protocol __rcu *inet6_protos[MAX_INET_PROTOS] __read_mostly; -const struct net_offload __rcu *inet6_offloads[MAX_INET_PROTOS] __read_mostly; +EXPORT_SYMBOL(inet6_protos);  int inet6_add_protocol(const struct inet6_protocol *prot, unsigned char protocol)  { @@ -35,13 +36,6 @@ int inet6_add_protocol(const struct inet6_protocol *prot, unsigned char protocol  }  EXPORT_SYMBOL(inet6_add_protocol); -int inet6_add_offload(const struct net_offload *prot, unsigned char protocol) -{ -	return !cmpxchg((const struct net_offload **)&inet6_offloads[protocol], -			NULL, prot) ? 0 : -1; -} -EXPORT_SYMBOL(inet6_add_offload); -  /*   *	Remove a protocol from the hash tables.   */ @@ -58,6 +52,16 @@ int inet6_del_protocol(const struct inet6_protocol *prot, unsigned char protocol  	return ret;  }  EXPORT_SYMBOL(inet6_del_protocol); +#endif + +const struct net_offload __rcu *inet6_offloads[MAX_INET_PROTOS] __read_mostly; + +int inet6_add_offload(const struct net_offload *prot, unsigned char protocol) +{ +	return !cmpxchg((const struct net_offload **)&inet6_offloads[protocol], +			NULL, prot) ? 0 : -1; +} +EXPORT_SYMBOL(inet6_add_offload);  int inet6_del_offload(const struct net_offload *prot, unsigned char protocol)  {  |