ipvs: Pass ipvs not net to ip_vs_protocol_net_(init|cleanup)
authorEric W. Biederman <ebiederm@xmission.com>
Mon, 21 Sep 2015 18:02:58 +0000 (13:02 -0500)
committerSimon Horman <horms@verge.net.au>
Thu, 24 Sep 2015 00:34:43 +0000 (09:34 +0900)
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Acked-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Simon Horman <horms@verge.net.au>
include/net/ip_vs.h
net/netfilter/ipvs/ip_vs_core.c
net/netfilter/ipvs/ip_vs_proto.c

index f0a39ce3bf0efec1ff4680c669504c6280b23e6a..00318d63a5651e9f8f6136c9b0a7a44fb25d8fdc 100644 (file)
@@ -1340,13 +1340,13 @@ ip_vs_control_add(struct ip_vs_conn *cp, struct ip_vs_conn *ctl_cp)
 /* IPVS netns init & cleanup functions */
 int ip_vs_estimator_net_init(struct netns_ipvs *ipvs);
 int ip_vs_control_net_init(struct netns_ipvs *ipvs);
-int ip_vs_protocol_net_init(struct net *net);
+int ip_vs_protocol_net_init(struct netns_ipvs *ipvs);
 int ip_vs_app_net_init(struct netns_ipvs *ipvs);
 int ip_vs_conn_net_init(struct netns_ipvs *ipvs);
 int ip_vs_sync_net_init(struct netns_ipvs *ipvs);
 void ip_vs_conn_net_cleanup(struct netns_ipvs *ipvs);
 void ip_vs_app_net_cleanup(struct netns_ipvs *ipvs);
-void ip_vs_protocol_net_cleanup(struct net *net);
+void ip_vs_protocol_net_cleanup(struct netns_ipvs *ipvs);
 void ip_vs_control_net_cleanup(struct netns_ipvs *ipvs);
 void ip_vs_estimator_net_cleanup(struct netns_ipvs *ipvs);
 void ip_vs_sync_net_cleanup(struct netns_ipvs *ipvs);
index 22eae0231cbb85668e8e1cd8e83211a981ea1304..ab85ae0f531ff29e0411b6f565e05e7d4aca8dcb 100644 (file)
@@ -2052,7 +2052,7 @@ static int __net_init __ip_vs_init(struct net *net)
        if (ip_vs_control_net_init(ipvs) < 0)
                goto control_fail;
 
-       if (ip_vs_protocol_net_init(net) < 0)
+       if (ip_vs_protocol_net_init(ipvs) < 0)
                goto protocol_fail;
 
        if (ip_vs_app_net_init(ipvs) < 0)
@@ -2076,7 +2076,7 @@ sync_fail:
 conn_fail:
        ip_vs_app_net_cleanup(ipvs);
 app_fail:
-       ip_vs_protocol_net_cleanup(net);
+       ip_vs_protocol_net_cleanup(ipvs);
 protocol_fail:
        ip_vs_control_net_cleanup(ipvs);
 control_fail:
@@ -2093,7 +2093,7 @@ static void __net_exit __ip_vs_cleanup(struct net *net)
        ip_vs_service_net_cleanup(ipvs);        /* ip_vs_flush() with locks */
        ip_vs_conn_net_cleanup(ipvs);
        ip_vs_app_net_cleanup(ipvs);
-       ip_vs_protocol_net_cleanup(net);
+       ip_vs_protocol_net_cleanup(ipvs);
        ip_vs_control_net_cleanup(ipvs);
        ip_vs_estimator_net_cleanup(ipvs);
        IP_VS_DBG(2, "ipvs netns %d released\n", ipvs->gen);
index f05ee668a1d192629812e0df97589fad08906d52..8ae480715ceae79ae07fd4dbfc9bacf424b429b3 100644 (file)
@@ -307,7 +307,7 @@ ip_vs_tcpudp_debug_packet(int af, struct ip_vs_protocol *pp,
 /*
  * per network name-space init
  */
-int __net_init ip_vs_protocol_net_init(struct net *net)
+int __net_init ip_vs_protocol_net_init(struct netns_ipvs *ipvs)
 {
        int i, ret;
        static struct ip_vs_protocol *protos[] = {
@@ -327,7 +327,6 @@ int __net_init ip_vs_protocol_net_init(struct net *net)
        &ip_vs_protocol_esp,
 #endif
        };
-       struct netns_ipvs *ipvs = net_ipvs(net);
 
        for (i = 0; i < ARRAY_SIZE(protos); i++) {
                ret = register_ip_vs_proto_netns(ipvs, protos[i]);
@@ -337,13 +336,12 @@ int __net_init ip_vs_protocol_net_init(struct net *net)
        return 0;
 
 cleanup:
-       ip_vs_protocol_net_cleanup(net);
+       ip_vs_protocol_net_cleanup(ipvs);
        return ret;
 }
 
-void __net_exit ip_vs_protocol_net_cleanup(struct net *net)
+void __net_exit ip_vs_protocol_net_cleanup(struct netns_ipvs *ipvs)
 {
-       struct netns_ipvs *ipvs = net_ipvs(net);
        struct ip_vs_proto_data *pd;
        int i;