Merge branch 'for-3.17' of git://linux-nfs.org/~bfields/linux

Pull nfsd bugfix from Bruce Fields:
 "This fixes a data corruption bug introduced by the v3.16 xdr encoding
  rewrite.  I haven't managed to reproduce it myself yet, but it's
  apparently not hard to hit given the right workload"

* 'for-3.17' of git://linux-nfs.org/~bfields/linux:
  nfsd4: fix corruption of NFSv4 read data
This commit is contained in:
Linus Torvalds 2014-10-01 13:22:00 -07:00
commit a44f867247

View File

@ -3104,7 +3104,8 @@ static __be32 nfsd4_encode_splice_read(
buf->page_len = maxcount; buf->page_len = maxcount;
buf->len += maxcount; buf->len += maxcount;
xdr->page_ptr += (maxcount + PAGE_SIZE - 1) / PAGE_SIZE; xdr->page_ptr += (buf->page_base + maxcount + PAGE_SIZE - 1)
/ PAGE_SIZE;
/* Use rest of head for padding and remaining ops: */ /* Use rest of head for padding and remaining ops: */
buf->tail[0].iov_base = xdr->p; buf->tail[0].iov_base = xdr->p;