diff options
| author | Trond Myklebust <trond.myklebust@fys.uio.no> | 2004-08-23 10:15:13 -0400 |
|---|---|---|
| committer | Trond Myklebust <trond.myklebust@fys.uio.no> | 2004-08-23 10:15:13 -0400 |
| commit | 4ea5dc72c1eb79aab3c460296e2aa49913401ec7 (patch) | |
| tree | fd48191106791e2655b83bf729fbaa96b52d79ea /kernel/fork.c | |
| parent | 7d4e31b1a1704ae6ceffb4ced34153bde028ce1c (diff) | |
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>
Diffstat (limited to 'kernel/fork.c')
0 files changed, 0 insertions, 0 deletions
