Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d3b6f614 authored by Eric Dumazet's avatar Eric Dumazet Committed by David S. Miller
Browse files

ip_tunnel: remove __net_init/exit from exported functions



If CONFIG_NET_NS is not set then __net_init is the same as __init and
__net_exit is the same as __exit. These functions will be removed from
memory after the module loads or is removed. Functions that are exported
for use by other functions should never be labeled for removal.

Bug introduced by commit c5441932
("GRE: Refactor GRE tunneling code.")

Reported-by: default avatarSteinar H. Gunderson <sgunderson@bigfoot.com>
Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
Signed-off-by: default avatarEric Dumazet <edumazet@google.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent cc60ab0a
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -95,10 +95,10 @@ struct ip_tunnel_net {
int ip_tunnel_init(struct net_device *dev);
void ip_tunnel_uninit(struct net_device *dev);
void  ip_tunnel_dellink(struct net_device *dev, struct list_head *head);
int __net_init ip_tunnel_init_net(struct net *net, int ip_tnl_net_id,
int ip_tunnel_init_net(struct net *net, int ip_tnl_net_id,
		       struct rtnl_link_ops *ops, char *devname);

void __net_exit ip_tunnel_delete_net(struct ip_tunnel_net *itn);
void ip_tunnel_delete_net(struct ip_tunnel_net *itn);

void ip_tunnel_xmit(struct sk_buff *skb, struct net_device *dev,
		    const struct iphdr *tnl_params);
+2 −2
Original line number Diff line number Diff line
@@ -853,7 +853,7 @@ void ip_tunnel_dellink(struct net_device *dev, struct list_head *head)
}
EXPORT_SYMBOL_GPL(ip_tunnel_dellink);

int __net_init ip_tunnel_init_net(struct net *net, int ip_tnl_net_id,
int ip_tunnel_init_net(struct net *net, int ip_tnl_net_id,
				  struct rtnl_link_ops *ops, char *devname)
{
	struct ip_tunnel_net *itn = net_generic(net, ip_tnl_net_id);
@@ -899,7 +899,7 @@ static void ip_tunnel_destroy(struct ip_tunnel_net *itn, struct list_head *head)
		unregister_netdevice_queue(itn->fb_tunnel_dev, head);
}

void __net_exit ip_tunnel_delete_net(struct ip_tunnel_net *itn)
void ip_tunnel_delete_net(struct ip_tunnel_net *itn)
{
	LIST_HEAD(list);