diff options
author | Ben Hutchings <bhutchings@solarflare.com> | 2011-02-22 21:54:34 +0000 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-03-23 12:49:54 -0700 |
commit | 3d24afb103de9a869c574d7d27d04d8c74d1b211 (patch) | |
tree | 40c950bdd141fd368adc65ff90c4da968a6851b2 /net | |
parent | b0b9f804f5f9e59fe6d192633a3014afc1b62ab3 (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.c | 3 |
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; } |