Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3daa020f authored by J. Bruce Fields's avatar J. Bruce Fields
Browse files

Revert "svcrdma: Do not send XDR roundup bytes for a write chunk"



This reverts commit 6f18dc89.

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: default avatarJ. Bruce Fields <bfields@redhat.com>
parent 0751ddf7
Loading
Loading
Loading
Loading
+0 −7
Original line number Diff line number Diff line
@@ -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,