Hi Greg, The following patches are needed in order to fix the NFS read/write code in 3.16.x (and only 3.16.x). As it stands, that code will Oops badly if you mount using the rsize=1024 or wsize=1024 (or anything < page size). Unfortunately, the upstream patches required me to pull in a few cleanups on which there were dependencies, so the first 4 patches are needed in order to support the fixes that follow. Cheers Trond Weston Andros Adamson (14): nfs: move nfs_pgio_data and remove nfs_rw_header nfs: rename members of nfs_pgio_data nfs: merge nfs_pgio_data into _header nfs: remove pgio_header refcount, related cleanup nfs: check wait_on_bit_lock err in page_group_lock pnfs: add pnfs_put_lseg_async nfs: clear_request_commit while holding i_lock nfs: change nfs_page_group_lock argument nfs: fix nonblocking calls to nfs_page_group_lock nfs: use blocking page_group_lock in add_request nfs: fix error handling in lock_and_join_requests nfs: don't sleep with inode lock in lock_and_join_requests nfs: disallow duplicate pages in pgio page vectors nfs: can_coalesce_requests must enforce contiguity fs/nfs/blocklayout/blocklayout.c | 99 +++++++------- fs/nfs/direct.c | 8 +- fs/nfs/filelayout/filelayout.c | 175 ++++++++++++------------ fs/nfs/internal.h | 10 +- fs/nfs/nfs3proc.c | 21 +-- fs/nfs/nfs4_fs.h | 6 +- fs/nfs/nfs4proc.c | 105 ++++++++------- fs/nfs/nfs4trace.h | 28 ++-- fs/nfs/objlayout/objio_osd.c | 24 ++-- fs/nfs/objlayout/objlayout.c | 81 ++++++----- fs/nfs/objlayout/objlayout.h | 8 +- fs/nfs/pagelist.c | 284 +++++++++++++++++++-------------------- fs/nfs/pnfs.c | 119 ++++++++-------- fs/nfs/pnfs.h | 17 ++- fs/nfs/proc.c | 27 ++-- fs/nfs/read.c | 48 +++---- fs/nfs/write.c | 99 ++++++++------ include/linux/nfs_page.h | 16 ++- include/linux/nfs_xdr.h | 32 ++--- 19 files changed, 602 insertions(+), 605 deletions(-) -- 1.9.3 -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html