Commit 56d2169b authored by Eric W. Biederman's avatar Eric W. Biederman Committed by Simon Horman

ipvs: Pass ipvs not net to ip_vs_service_net_cleanup

Signed-off-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
Acked-by: default avatarJulian Anastasov <ja@ssi.bg>
Signed-off-by: default avatarSimon Horman <horms@verge.net.au>
parent ef7c599d
...@@ -1335,7 +1335,7 @@ void ip_vs_protocol_net_cleanup(struct net *net); ...@@ -1335,7 +1335,7 @@ void ip_vs_protocol_net_cleanup(struct net *net);
void ip_vs_control_net_cleanup(struct net *net); void ip_vs_control_net_cleanup(struct net *net);
void ip_vs_estimator_net_cleanup(struct net *net); void ip_vs_estimator_net_cleanup(struct net *net);
void ip_vs_sync_net_cleanup(struct net *net); void ip_vs_sync_net_cleanup(struct net *net);
void ip_vs_service_net_cleanup(struct net *net); void ip_vs_service_net_cleanup(struct netns_ipvs *ipvs);
/* IPVS application functions /* IPVS application functions
* (from ip_vs_app.c) * (from ip_vs_app.c)
......
...@@ -2110,13 +2110,15 @@ static int __net_init __ip_vs_init(struct net *net) ...@@ -2110,13 +2110,15 @@ static int __net_init __ip_vs_init(struct net *net)
static void __net_exit __ip_vs_cleanup(struct net *net) static void __net_exit __ip_vs_cleanup(struct net *net)
{ {
ip_vs_service_net_cleanup(net); /* ip_vs_flush() with locks */ struct netns_ipvs *ipvs = net_ipvs(net);
ip_vs_service_net_cleanup(ipvs); /* ip_vs_flush() with locks */
ip_vs_conn_net_cleanup(net); ip_vs_conn_net_cleanup(net);
ip_vs_app_net_cleanup(net); ip_vs_app_net_cleanup(net);
ip_vs_protocol_net_cleanup(net); ip_vs_protocol_net_cleanup(net);
ip_vs_control_net_cleanup(net); ip_vs_control_net_cleanup(net);
ip_vs_estimator_net_cleanup(net); ip_vs_estimator_net_cleanup(net);
IP_VS_DBG(2, "ipvs netns %d released\n", net_ipvs(net)->gen); IP_VS_DBG(2, "ipvs netns %d released\n", ipvs->gen);
net->ipvs = NULL; net->ipvs = NULL;
} }
......
...@@ -1484,9 +1484,8 @@ static int ip_vs_flush(struct netns_ipvs *ipvs, bool cleanup) ...@@ -1484,9 +1484,8 @@ static int ip_vs_flush(struct netns_ipvs *ipvs, bool cleanup)
* Delete service by {netns} in the service table. * Delete service by {netns} in the service table.
* Called by __ip_vs_cleanup() * Called by __ip_vs_cleanup()
*/ */
void ip_vs_service_net_cleanup(struct net *net) void ip_vs_service_net_cleanup(struct netns_ipvs *ipvs)
{ {
struct netns_ipvs *ipvs = net_ipvs(net);
EnterFunction(2); EnterFunction(2);
/* Check for "full" addressed entries */ /* Check for "full" addressed entries */
mutex_lock(&__ip_vs_mutex); mutex_lock(&__ip_vs_mutex);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment