sunrpc: Create sockets in net namespaces
Pavel Emelyanov [Wed, 29 Sep 2010 12:06:57 +0000 (16:06 +0400)]
The context is already known in all the sock_create callers.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>

net/sunrpc/svcsock.c
net/sunrpc/xprtsock.c

index 5593385..88de3d0 100644 (file)
@@ -1425,7 +1425,7 @@ static struct svc_xprt *svc_create_socket(struct svc_serv *serv,
                return ERR_PTR(-EINVAL);
        }
 
-       error = sock_create_kern(family, type, protocol, &sock);
+       error = __sock_create(net, family, type, protocol, &sock, 1);
        if (error < 0)
                return ERR_PTR(error);
 
index 4ef3a6a..f9964ef 100644 (file)
@@ -1680,7 +1680,7 @@ static void xs_udp_connect_worker4(struct work_struct *work)
        /* Start by resetting any existing state */
        xs_reset_transport(transport);
 
-       err = sock_create_kern(PF_INET, SOCK_DGRAM, IPPROTO_UDP, &sock);
+       err = __sock_create(xprt->xprt_net, PF_INET, SOCK_DGRAM, IPPROTO_UDP, &sock, 1);
        if (err < 0) {
                dprintk("RPC:       can't create UDP transport socket (%d).\n", -err);
                goto out;
@@ -1725,7 +1725,7 @@ static void xs_udp_connect_worker6(struct work_struct *work)
        /* Start by resetting any existing state */
        xs_reset_transport(transport);
 
-       err = sock_create_kern(PF_INET6, SOCK_DGRAM, IPPROTO_UDP, &sock);
+       err = __sock_create(xprt->xprt_net, PF_INET6, SOCK_DGRAM, IPPROTO_UDP, &sock, 1);
        if (err < 0) {
                dprintk("RPC:       can't create UDP transport socket (%d).\n", -err);
                goto out;
@@ -1931,7 +1931,7 @@ static struct socket *xs_create_tcp_sock4(struct rpc_xprt *xprt,
        int err;
 
        /* start from scratch */
-       err = sock_create_kern(PF_INET, SOCK_STREAM, IPPROTO_TCP, &sock);
+       err = __sock_create(xprt->xprt_net, PF_INET, SOCK_STREAM, IPPROTO_TCP, &sock, 1);
        if (err < 0) {
                dprintk("RPC:       can't create TCP transport socket (%d).\n",
                                -err);
@@ -1970,7 +1970,7 @@ static struct socket *xs_create_tcp_sock6(struct rpc_xprt *xprt,
        int err;
 
        /* start from scratch */
-       err = sock_create_kern(PF_INET6, SOCK_STREAM, IPPROTO_TCP, &sock);
+       err = __sock_create(xprt->xprt_net, PF_INET6, SOCK_STREAM, IPPROTO_TCP, &sock, 1);
        if (err < 0) {
                dprintk("RPC:       can't create TCP transport socket (%d).\n",
                                -err);