tmp_suning_uos_patched/fs/nfs
Chuck Lever dd47f96c07 NFS: Revert default r/wsize behavior
When the "rsize=" or "wsize=" mount options are not specified,
text-based mounts have slightly different behavior than legacy binary
mounts.  Text-based mounts use the smaller of the server's maximum
and the client's maximum, but binary mounts use the smaller of the
server's _preferred_ size and the client's maximum.

This difference is actually pretty subtle.  Most servers advertise
the same value as their maximum and their preferred transfer size, so
the end result is the same in most cases.

The reason for this difference is that for text-based mounts, if
r/wsize are not specified, they are set to the largest value supported
by the client.  For legacy mounts, the values are set to zero if these
options are not specified.

nfs_server_set_fsinfo() can negotiate the transfer size defaults
correctly in any case.  There's no need to specify any particular
value as default in the text-based option parsing logic.

Note that nfs4 doesn't use nfs_server_set_fsinfo(), but the mount.nfs4
command does set rsize and wsize to 0 if the user didn't specify these
options.  So, make the same change for text-based NFSv4 mounts.

Thanks to James Pearson <james-p@moving-picture.com> for reporting and
diagnosing the problem.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
2009-12-03 15:58:56 -05:00
..
cache_lib.c NFS: Add a dns resolver for use with NFSv4 referrals and migration 2009-08-19 18:22:15 -04:00
cache_lib.h NFS: Add a dns resolver for use with NFSv4 referrals and migration 2009-08-19 18:22:15 -04:00
callback_proc.c
callback_xdr.c trivial: remove unnecessary semicolons 2009-09-21 15:14:58 +02:00
callback.c The rpc server does not require that service threads take the BKL. 2009-12-03 15:58:33 -05:00
callback.h
client.c nfs: Avoid overrun when copying client IP address string 2009-10-06 15:42:18 -04:00
delegation.c
delegation.h
dir.c NFSv4: The link() operation should return any delegation on the file 2009-10-26 08:09:46 -04:00
direct.c nfs: Panic when commit fails 2009-10-23 14:16:30 -04:00
dns_resolve.c NFS: Add a dns resolver for use with NFSv4 referrals and migration 2009-08-19 18:22:15 -04:00
dns_resolve.h NFS: Add a dns resolver for use with NFSv4 referrals and migration 2009-08-19 18:22:15 -04:00
file.c const: mark struct vm_struct_operations 2009-09-27 11:39:25 -07:00
fscache-index.c
fscache.c FS-Cache: Handle pages pending storage that get evicted under OOM conditions 2009-11-19 18:11:35 +00:00
fscache.h NFS: Propagate 'fsc' mount option through automounts 2009-09-23 14:36:39 -04:00
getroot.c
idmap.c
inode.c truncate: use new helpers 2009-09-24 08:41:47 -04:00
internal.h NFS: Allow the "nfs" file system type to support NFSv4 2009-09-08 19:50:03 -04:00
iostat.h
Kconfig
Makefile NFS: Add a dns resolver for use with NFSv4 referrals and migration 2009-08-19 18:22:15 -04:00
mount_clnt.c
namespace.c
nfs2xdr.c headers: utsname.h redux 2009-09-23 18:13:10 -07:00
nfs3acl.c
nfs3proc.c headers: utsname.h redux 2009-09-23 18:13:10 -07:00
nfs3xdr.c headers: utsname.h redux 2009-09-23 18:13:10 -07:00
nfs4_fs.h
nfs4namespace.c NFSv4: Fix the referral mount code 2009-10-06 15:42:20 -04:00
nfs4proc.c NFSv4: Fix a cache validation bug which causes getcwd() to return ENOENT 2009-11-11 16:15:42 +09:00
nfs4renewd.c NFSv4: Kill nfs4_renewd_prepare_shutdown() 2009-10-08 11:50:55 -04:00
nfs4state.c const: make file_lock_operations const 2009-09-22 07:17:25 -07:00
nfs4xdr.c NFSv4: Fix a bug when the server returns NFS4ERR_RESOURCE 2009-10-23 14:46:42 -04:00
nfsroot.c
pagelist.c
proc.c headers: utsname.h redux 2009-09-23 18:13:10 -07:00
read.c NFS: Fix an O_DIRECT Oops... 2009-08-12 08:21:39 -07:00
super.c NFS: Revert default r/wsize behavior 2009-12-03 15:58:56 -05:00
symlink.c
sysctl.c
unlink.c
write.c writeback: get rid of wbc->for_writepages 2009-09-16 15:16:18 +02:00