Commit 5c4afe2a authored by Trond Myklebust's avatar Trond Myklebust

NFSv4.2: decode_read_plus_data() must skip padding after data segment

All XDR opaque object sizes are 32-bit aligned, and a data segment is no
exception.
Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
parent 1ee63101
......@@ -1038,7 +1038,9 @@ static int decode_read_plus_data(struct xdr_stream *xdr, struct nfs_pgio_res *re
p = xdr_decode_hyper(p, &offset);
count = be32_to_cpup(p);
recvd = xdr_align_data(xdr, res->count, count);
recvd = xdr_align_data(xdr, res->count, xdr_align_size(count));
if (recvd > count)
recvd = count;
res->count += recvd;
if (count > recvd) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment