linux/fs/nfs
Jeff Layton aa53ed541a NFS4: on a O_EXCL OPEN make sure SETATTR sets the fields holding the verifier
The Linux NFS4 client simply skips over the bitmask in an O_EXCL open
call and so it doesn't bother to reset any fields that may be holding
the verifier. This patch has us save the first two words of the bitmask
(which is all the current client has #defines for). The client then
later checks this bitmask and turns on the appropriate flags in the
sattr->ia_verify field for the following SETATTR call.

This patch only currently checks to see if the server used the atime
and mtime slots for the verifier (which is what the Linux server uses
for this). I'm not sure of what other fields the server could
reasonably use, but adding checks for others should be trivial.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
2007-07-10 23:40:25 -04:00
..
callback_proc.c [PATCH] fs/nfs/callback* passes error values big-endian 2006-10-20 10:26:40 -07:00
callback_xdr.c [PATCH] knfsd: SUNRPC: Provide room in svc_rqst for larger addresses 2007-02-12 09:48:36 -08:00
callback.c [PATCH] knfsd: SUNRPC: Provide room in svc_rqst for larger addresses 2007-02-12 09:48:36 -08:00
callback.h NFS: Fix more sparse warnings 2007-05-14 19:33:46 -04:00
client.c Detach sched.h from mm.h 2007-05-21 09:18:19 -07:00
delegation.c NFSv4: Cleanup: pass the nfs_open_context to open recovery code 2007-07-10 23:40:24 -04:00
delegation.h NFSv4: Cleanup: pass the nfs_open_context to open recovery code 2007-07-10 23:40:24 -04:00
dir.c NFS: Use GFP_HIGHUSER for page allocation in nfs_symlink() 2007-07-10 23:40:25 -04:00
direct.c NFS: Replace vfsmount and dentry in nfs_open_context with struct path 2007-07-10 23:40:23 -04:00
file.c sendfile: convert nfs to using splice_read() 2007-07-10 08:04:14 +02:00
getroot.c NFS: Kill the obsolete NFS_PARANOIA 2007-05-09 17:58:01 -04:00
idmap.c NFS: use __set_current_state() 2007-05-09 17:58:01 -04:00
inode.c NFS: Fix nfs_reval_fsid() 2007-07-10 23:40:24 -04:00
internal.h NFS: Fix a buffer overflow in the allocation of struct nfs_read/writedata 2007-04-30 22:17:07 -07:00
iostat.h NFSv4: Fix an oops in nfs4_fill_super 2006-03-20 13:44:48 -05:00
Makefile NFS: Share NFS superblocks per-protocol per-server per-FSID 2006-09-22 23:24:37 -04:00
mount_clnt.c SUNRPC: RPC buffer size estimates are too large 2007-04-30 22:17:10 -07:00
namespace.c [PATCH] mark struct inode_operations const 2 2007-02-12 09:48:46 -08:00
nfs2xdr.c NFS: Kill the obsolete NFS_PARANOIA 2007-05-09 17:58:01 -04:00
nfs3acl.c NFSv3: Client-side nfsacl caching fix 2006-06-09 09:34:11 -04:00
nfs3proc.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
nfs3xdr.c SUNRPC: RPC buffer size estimates are too large 2007-04-30 22:17:10 -07:00
nfs4_fs.h NFSv4: Ensure that nfs4_do_close() doesn't race with umount 2007-07-10 23:40:24 -04:00
nfs4namespace.c NFSv4: /proc/mounts displays the wrong server name for referrals 2007-02-03 15:35:10 -08:00
nfs4proc.c NFS4: on a O_EXCL OPEN make sure SETATTR sets the fields holding the verifier 2007-07-10 23:40:25 -04:00
nfs4renewd.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
nfs4state.c NFSv4: Clean up nfs4_call_async() 2007-07-10 23:40:24 -04:00
nfs4xdr.c NFS4: on a O_EXCL OPEN make sure SETATTR sets the fields holding the verifier 2007-07-10 23:40:25 -04:00
nfsroot.c NFS: switch NFSROOT to use new rpcbind client 2007-04-30 22:17:14 -07:00
pagelist.c NFS: Replace vfsmount and dentry in nfs_open_context with struct path 2007-07-10 23:40:23 -04:00
proc.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
read.c NFS: Replace vfsmount and dentry in nfs_open_context with struct path 2007-07-10 23:40:23 -04:00
super.c NFS: Re-enable forced umounts 2007-07-10 23:40:25 -04:00
symlink.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
sysctl.c [PATCH] nfs: fix congestion control 2007-03-16 19:25:05 -07:00
unlink.c NFS: kzalloc conversion in fs/nfs 2006-03-20 13:44:10 -05:00
write.c NFS: Replace vfsmount and dentry in nfs_open_context with struct path 2007-07-10 23:40:23 -04:00