linux/fs/nfs
Trond Myklebust e9f7bee1df [PATCH] NFS: large non-page-aligned direct I/O clobbers memory
The logic in nfs_direct_read_schedule and nfs_direct_write_schedule can
allow data->npages to be one larger than rpages.  This causes a page
pointer to be written beyond the end of the pagevec in nfs_read_data (or
nfs_write_data).

Fix this by making nfs_(read|write)_alloc() calculate the size of the
pagevec array, and initialise data->npages.

Also get rid of the redundant argument to nfs_commit_alloc().

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-09-08 10:22:51 -07:00
..
callback_proc.c
callback_xdr.c
callback.c
callback.h
delegation.c
delegation.h
dir.c NFS: Optimise away an excessive GETATTR call when a file is symlinked 2006-07-05 13:17:13 -04:00
direct.c [PATCH] NFS: large non-page-aligned direct I/O clobbers memory 2006-09-08 10:22:51 -07:00
file.c NFS: Fix a potential deadlock in nfs_release_page 2006-08-24 15:48:46 -04:00
idmap.c SUNRPC: Fix dentry refcounting issues with users of rpc_pipefs 2006-08-24 15:50:51 -04:00
inode.c
internal.h
iostat.h
Makefile
mount_clnt.c
namespace.c NFS: Release dcache_lock in an error path of nfs_path 2006-08-03 16:55:01 -04:00
nfs2xdr.c
nfs3acl.c
nfs3proc.c
nfs3xdr.c
nfs4_fs.h
nfs4namespace.c
nfs4proc.c NFSv4: Add v4 exception handling for the ACL functions. 2006-08-24 15:54:13 -04:00
nfs4renewd.c
nfs4state.c
nfs4xdr.c NFS: Check lengths more thoroughly in NFS4 readdir XDR decode 2006-08-24 15:53:34 -04:00
nfsroot.c
pagelist.c
proc.c
read.c [PATCH] NFS: large non-page-aligned direct I/O clobbers memory 2006-09-08 10:22:51 -07:00
super.c
symlink.c
sysctl.c
unlink.c
write.c [PATCH] NFS: large non-page-aligned direct I/O clobbers memory 2006-09-08 10:22:51 -07:00