summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorBen Hutchings <bhutchings@solarflare.com>2011-02-22 21:54:34 +0000
committerGreg Kroah-Hartman <gregkh@suse.de>2011-03-23 12:49:54 -0700
commit3d24afb103de9a869c574d7d27d04d8c74d1b211 (patch)
tree40c950bdd141fd368adc65ff90c4da968a6851b2 /net
parentb0b9f804f5f9e59fe6d192633a3014afc1b62ab3 (diff)
sunrpc: Propagate errors from xs_bind() through xs_create_sock()
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>
Diffstat (limited to 'net')
-rw-r--r--net/sunrpc/xprtsock.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/sunrpc/xprtsock.c b/net/sunrpc/xprtsock.c
index dfcab5ac65af..3ad452b00157 100644
--- a/net/sunrpc/xprtsock.c
+++ b/net/sunrpc/xprtsock.c
@@ -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;
}