diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-03-18 19:50:09 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-03-18 19:50:09 -0400 |
commit | 7c34691abe23741bfc7d2514efd5a39f0e0ecb06 (patch) | |
tree | f5c673eda066f4d7870d502d52d705b629eb8c03 /net/sunrpc | |
parent | 5f87e54d7d6f58e8f15819cf8901860d9512e8b4 (diff) | |
parent | cfbc0683af235106e7dabe92003870b82ad6f0ba (diff) |
Merge branch 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6
* 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6:
NFS: ensure bdi_unregister is called on mount failure.
NFS: Avoid a deadlock in nfs_release_page
NFSv4: Don't ignore the NFS_INO_REVAL_FORCED flag in nfs_revalidate_inode()
nfs4: Make the v4 callback service hidden
nfs: fix unlikely memory leak
rpc client can not deal with ENOSOCK, so translate it into ENOCONN
Diffstat (limited to 'net/sunrpc')
-rw-r--r-- | net/sunrpc/xprtsock.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/net/sunrpc/xprtsock.c b/net/sunrpc/xprtsock.c index 75ab08eac66b..e4839c07c913 100644 --- a/net/sunrpc/xprtsock.c +++ b/net/sunrpc/xprtsock.c | |||
@@ -548,8 +548,6 @@ static int xs_udp_send_request(struct rpc_task *task) | |||
548 | /* Still some bytes left; set up for a retry later. */ | 548 | /* Still some bytes left; set up for a retry later. */ |
549 | status = -EAGAIN; | 549 | status = -EAGAIN; |
550 | } | 550 | } |
551 | if (!transport->sock) | ||
552 | goto out; | ||
553 | 551 | ||
554 | switch (status) { | 552 | switch (status) { |
555 | case -ENOTSOCK: | 553 | case -ENOTSOCK: |
@@ -569,7 +567,7 @@ static int xs_udp_send_request(struct rpc_task *task) | |||
569 | * prompts ECONNREFUSED. */ | 567 | * prompts ECONNREFUSED. */ |
570 | clear_bit(SOCK_ASYNC_NOSPACE, &transport->sock->flags); | 568 | clear_bit(SOCK_ASYNC_NOSPACE, &transport->sock->flags); |
571 | } | 569 | } |
572 | out: | 570 | |
573 | return status; | 571 | return status; |
574 | } | 572 | } |
575 | 573 | ||
@@ -651,8 +649,6 @@ static int xs_tcp_send_request(struct rpc_task *task) | |||
651 | status = -EAGAIN; | 649 | status = -EAGAIN; |
652 | break; | 650 | break; |
653 | } | 651 | } |
654 | if (!transport->sock) | ||
655 | goto out; | ||
656 | 652 | ||
657 | switch (status) { | 653 | switch (status) { |
658 | case -ENOTSOCK: | 654 | case -ENOTSOCK: |
@@ -672,7 +668,7 @@ static int xs_tcp_send_request(struct rpc_task *task) | |||
672 | case -ENOTCONN: | 668 | case -ENOTCONN: |
673 | clear_bit(SOCK_ASYNC_NOSPACE, &transport->sock->flags); | 669 | clear_bit(SOCK_ASYNC_NOSPACE, &transport->sock->flags); |
674 | } | 670 | } |
675 | out: | 671 | |
676 | return status; | 672 | return status; |
677 | } | 673 | } |
678 | 674 | ||