diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2020-06-15 16:21:13 +0300 |
---|---|---|
committer | Anna Schumaker <Anna.Schumaker@Netapp.com> | 2020-06-22 16:34:35 +0300 |
commit | 7b2182ec381f8ea15c7eb1266d6b5d7da620ad93 (patch) | |
tree | f8744753ffc67508ffba1f09ef9845ba6a3e9e39 /net/sunrpc/rpc_pipe.c | |
parent | c487eb7d8e41579d87216ce43152acd336f2c4aa (diff) | |
download | linux-7b2182ec381f8ea15c7eb1266d6b5d7da620ad93.tar.xz |
xprtrdma: Fix handling of RDMA_ERROR replies
The RPC client currently doesn't handle ERR_CHUNK replies correctly.
rpcrdma_complete_rqst() incorrectly passes a negative number to
xprt_complete_rqst() as the number of bytes copied. Instead, set
task->tk_status to the error value, and return zero bytes copied.
In these cases, return -EIO rather than -EREMOTEIO. The RPC client's
finite state machine doesn't know what to do with -EREMOTEIO.
Additional clean ups:
- Don't double-count RDMA_ERROR replies
- Remove a stale comment
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Cc: <stable@kernel.vger.org>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
Diffstat (limited to 'net/sunrpc/rpc_pipe.c')
0 files changed, 0 insertions, 0 deletions