summaryrefslogtreecommitdiff
path: root/net/sunrpc
diff options
context:
space:
mode:
authorJ. Bruce Fields <bfields@redhat.com>2015-12-23 15:08:08 -0500
committerJ. Bruce Fields <bfields@redhat.com>2016-01-07 10:10:48 -0500
commit3daa020f9bf803c03c6b6c895921e2b09fcd494a (patch)
treef11ae40155db4c9e0d543da3749603fd785c403b /net/sunrpc
parent0751ddf77b6af2efe1041efb81141badd64efb65 (diff)
downloadlwn-3daa020f9bf803c03c6b6c895921e2b09fcd494a.tar.gz
lwn-3daa020f9bf803c03c6b6c895921e2b09fcd494a.zip
Revert "svcrdma: Do not send XDR roundup bytes for a write chunk"
This reverts commit 6f18dc893981e4daab29221d6a9771f3ce2dd8c5. Just as one example, it appears this code could do the wrong thing in the case of a two-byte NFS READ that crosses a page boundary. Chuck says: "In that case, nfsd would pass down an xdr_buf that has one byte in a page, one byte in another page, and a two-byte XDR pad. The logic introduced by this optimization would be fooled, and neither the second byte nor the XDR pad would be written to the client." Cc: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'net/sunrpc')
-rw-r--r--net/sunrpc/xprtrdma/svc_rdma_sendto.c7
1 files changed, 0 insertions, 7 deletions
diff --git a/net/sunrpc/xprtrdma/svc_rdma_sendto.c b/net/sunrpc/xprtrdma/svc_rdma_sendto.c
index bad5eaa9f812..969a1ab75fc3 100644
--- a/net/sunrpc/xprtrdma/svc_rdma_sendto.c
+++ b/net/sunrpc/xprtrdma/svc_rdma_sendto.c
@@ -342,13 +342,6 @@ static int send_write_chunks(struct svcxprt_rdma *xprt,
arg_ch->rs_handle,
arg_ch->rs_offset,
write_len);
-
- /* Do not send XDR pad bytes */
- if (chunk_no && write_len < 4) {
- chunk_no++;
- break;
- }
-
chunk_off = 0;
while (write_len) {
ret = send_write(xprt, rqstp,