sunrpc: Tag svc_xprt with net
The transport representation should be per-net of course. Signed-off-by: Pavel Emelyanov <xemul@openvz.org> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
This commit is contained in:
parent
593ce16b94
commit
4fb8518bda
2 changed files with 4 additions and 0 deletions
|
@ -66,6 +66,8 @@ struct svc_xprt {
|
||||||
struct sockaddr_storage xpt_remote; /* remote peer's address */
|
struct sockaddr_storage xpt_remote; /* remote peer's address */
|
||||||
size_t xpt_remotelen; /* length of address */
|
size_t xpt_remotelen; /* length of address */
|
||||||
struct rpc_wait_queue xpt_bc_pending; /* backchannel wait queue */
|
struct rpc_wait_queue xpt_bc_pending; /* backchannel wait queue */
|
||||||
|
|
||||||
|
struct net *xpt_net;
|
||||||
};
|
};
|
||||||
|
|
||||||
int svc_reg_xprt_class(struct svc_xprt_class *);
|
int svc_reg_xprt_class(struct svc_xprt_class *);
|
||||||
|
|
|
@ -130,6 +130,7 @@ static void svc_xprt_free(struct kref *kref)
|
||||||
struct module *owner = xprt->xpt_class->xcl_owner;
|
struct module *owner = xprt->xpt_class->xcl_owner;
|
||||||
if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags))
|
if (test_bit(XPT_CACHE_AUTH, &xprt->xpt_flags))
|
||||||
svcauth_unix_info_release(xprt);
|
svcauth_unix_info_release(xprt);
|
||||||
|
put_net(xprt->xpt_net);
|
||||||
xprt->xpt_ops->xpo_free(xprt);
|
xprt->xpt_ops->xpo_free(xprt);
|
||||||
module_put(owner);
|
module_put(owner);
|
||||||
}
|
}
|
||||||
|
@ -159,6 +160,7 @@ void svc_xprt_init(struct svc_xprt_class *xcl, struct svc_xprt *xprt,
|
||||||
spin_lock_init(&xprt->xpt_lock);
|
spin_lock_init(&xprt->xpt_lock);
|
||||||
set_bit(XPT_BUSY, &xprt->xpt_flags);
|
set_bit(XPT_BUSY, &xprt->xpt_flags);
|
||||||
rpc_init_wait_queue(&xprt->xpt_bc_pending, "xpt_bc_pending");
|
rpc_init_wait_queue(&xprt->xpt_bc_pending, "xpt_bc_pending");
|
||||||
|
xprt->xpt_net = get_net(&init_net);
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL_GPL(svc_xprt_init);
|
EXPORT_SYMBOL_GPL(svc_xprt_init);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue