]> git.hungrycats.org Git - linux/commit
NFS: In 2.4, NFS O_DIRECT used the VFS's O_DIRECT logic to provide
authorTrond Myklebust <trond.myklebust@fys.uio.no>
Mon, 23 Aug 2004 14:15:13 +0000 (10:15 -0400)
committerTrond Myklebust <trond.myklebust@fys.uio.no>
Mon, 23 Aug 2004 14:15:13 +0000 (10:15 -0400)
commit4ea5dc72c1eb79aab3c460296e2aa49913401ec7
treefd48191106791e2655b83bf729fbaa96b52d79ea
parent7d4e31b1a1704ae6ceffb4ced34153bde028ce1c
NFS: In 2.4, NFS O_DIRECT used the VFS's O_DIRECT logic to provide
   direct I/O support for NFS files.  The 2.4 VFS O_DIRECT logic was
   block based, thus the NFS client had to provide a minimum
   allowable blocksize for O_DIRECT reads and writes on NFS files.
   For various reasons we chose 512 bytes. In 2.6, there is no
   requirement for a minimum blocksize.  NFS O_DIRECT reads and
   writes can go to any byte at any offset in a file.  Thus we revert
   the blocksize setting for NFS file systems to the previous
   behavior, which was to advertise the "wsize" setting as the
   optimal I/O block size.  This improves the performance of
   applications like 'cp' which use this value as their transfer
   size.

This patch also exposes the server's reported disk block size in the
   f_frsize of the vfsstat structure.

Signed-off-by: Chuck Lever <cel@netapp.com>
Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no>
fs/nfs/inode.c
include/linux/nfs_fs_sb.h