]> git.hungrycats.org Git - linux/commitdiff
sunrpc: Propagate errors from xs_bind() through xs_create_sock()
authorBen Hutchings <bhutchings@solarflare.com>
Tue, 22 Feb 2011 21:54:34 +0000 (21:54 +0000)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 23 Mar 2011 19:49:54 +0000 (12:49 -0700)
commit 4cea288aaf0e11647880cc487350b1dc45d9febc upstream.

xs_create_sock() is supposed to return a pointer or an ERR_PTR-encoded
error, but it currently returns 0 if xs_bind() fails.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
net/sunrpc/xprtsock.c

index dfcab5ac65af329149c637b3365751ce66999540..3ad452b001577e470afb3ab436c27e652a136ee3 100644 (file)
@@ -1631,7 +1631,8 @@ static struct socket *xs_create_sock(struct rpc_xprt *xprt,
        }
        xs_reclassify_socket(family, sock);
 
-       if (xs_bind(transport, sock)) {
+       err = xs_bind(transport, sock);
+       if (err) {
                sock_release(sock);
                goto out;
        }