Commit 7bb782c6ac75898604eb547ed37b05c49b1edf21

Authored by Stanislav Kinsbursky
Committed by Trond Myklebust
1 parent 6d59b8d599

NFS: create callback transports in parent transport network namespace

This patch replaces static "init_net" references with parent transport xprt_net
reference. Thus callback transports will be created in the same network
namespace as respective NFS mount point was created.

Signed-off-by: Stanislav Kinsbursky <skinsbursky@parallels.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>

Showing 1 changed file with 5 additions and 5 deletions Side-by-side Diff

... ... @@ -102,11 +102,11 @@
102 102 * Prepare to bring up the NFSv4 callback service
103 103 */
104 104 struct svc_rqst *
105   -nfs4_callback_up(struct svc_serv *serv)
  105 +nfs4_callback_up(struct svc_serv *serv, struct rpc_xprt *xprt)
106 106 {
107 107 int ret;
108 108  
109   - ret = svc_create_xprt(serv, "tcp", &init_net, PF_INET,
  109 + ret = svc_create_xprt(serv, "tcp", xprt->xprt_net, PF_INET,
110 110 nfs_callback_set_tcpport, SVC_SOCK_ANONYMOUS);
111 111 if (ret <= 0)
112 112 goto out_err;
... ... @@ -114,7 +114,7 @@
114 114 dprintk("NFS: Callback listener port = %u (af %u)\n",
115 115 nfs_callback_tcpport, PF_INET);
116 116  
117   - ret = svc_create_xprt(serv, "tcp", &init_net, PF_INET6,
  117 + ret = svc_create_xprt(serv, "tcp", xprt->xprt_net, PF_INET6,
118 118 nfs_callback_set_tcpport, SVC_SOCK_ANONYMOUS);
119 119 if (ret > 0) {
120 120 nfs_callback_tcpport6 = ret;
... ... @@ -183,7 +183,7 @@
183 183 * fore channel connection.
184 184 * Returns the input port (0) and sets the svc_serv bc_xprt on success
185 185 */
186   - ret = svc_create_xprt(serv, "tcp-bc", &init_net, PF_INET, 0,
  186 + ret = svc_create_xprt(serv, "tcp-bc", xprt->xprt_net, PF_INET, 0,
187 187 SVC_SOCK_ANONYMOUS);
188 188 if (ret < 0) {
189 189 rqstp = ERR_PTR(ret);
... ... @@ -269,7 +269,7 @@
269 269 serv, xprt, &rqstp, &callback_svc);
270 270 if (!minorversion_setup) {
271 271 /* v4.0 callback setup */
272   - rqstp = nfs4_callback_up(serv);
  272 + rqstp = nfs4_callback_up(serv, xprt);
273 273 callback_svc = nfs4_callback_svc;
274 274 }
275 275