int pta_shutdown;
struct socket *pta_sock;
struct completion pta_signal;
+ struct net *pta_ns;
} lnet_acceptor_state = {
.pta_shutdown = 1
};
int
lnet_connect(struct socket **sockp, lnet_nid_t peer_nid,
- __u32 local_ip, __u32 peer_ip, int peer_port)
+ __u32 local_ip, __u32 peer_ip, int peer_port, struct net *ns)
{
struct lnet_acceptor_connreq cr;
struct socket *sock;
rc = lnet_sock_connect(&sock, &fatal,
local_ip, port,
- peer_ip, peer_port);
+ peer_ip, peer_port, ns);
if (rc != 0) {
if (fatal)
goto failed;
cfs_block_allsigs();
rc = lnet_sock_listen(&lnet_acceptor_state.pta_sock,
- 0, accept_port, accept_backlog);
+ 0, accept_port, accept_backlog,
+ lnet_acceptor_state.pta_ns);
if (rc != 0) {
if (rc == -EADDRINUSE)
LCONSOLE_ERROR_MSG(0x122, "Can't start acceptor on port"
if (lnet_count_acceptor_nets() == 0) /* not required */
return 0;
+ lnet_acceptor_state.pta_ns = current->nsproxy->net_ns;
task = kthread_run(lnet_acceptor, (void *)(uintptr_t)secure,
"acceptor_%03ld", secure);
if (IS_ERR(task)) {