kernel_optimize_test/fs/nfs
Trond Myklebust 2d0dbc6ae8 NFSv4: Fix unnecessary delegation returns in nfs4_do_open
While nfs4_do_open() expects the fmode argument to be restricted to
combinations of FMODE_READ and FMODE_WRITE, both nfs4_atomic_open()
and nfs4_proc_create will pass the nfs_open_context->mode,
which contains the full fmode_t.

This patch ensures that nfs4_do_open strips the other fmode_t bits,
fixing a problem in which the nfs4_do_open call would result in an
unnecessary delegation return.

Reported-by: Fred Isaman <iisaman@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: stable@vger.kernel.org
2012-06-08 11:08:42 -04:00
..
blocklayout NFS: Use proper naming conventions for the nfs_client.net field 2012-05-22 16:45:44 -04:00
objlayout NFS: Fix sparse warnings 2012-05-04 14:59:51 -04:00
cache_lib.c
cache_lib.h
callback_proc.c
callback_xdr.c
callback.c
callback.h
client.c NFS: Remove incorrect BUG_ON in nfs_found_client 2012-06-07 10:21:03 -04:00
delegation.c NFSv4: nfs_client_return_marked_delegations can't flush data 2012-05-08 12:53:21 -04:00
delegation.h NFS: nfs_inode_return_delegation() should always flush dirty data 2012-05-08 12:53:21 -04:00
dir.c NFS client updates for Linux 3.5 2012-05-29 10:43:51 -07:00
direct.c NFS: Fix a commit bug 2012-06-05 18:38:47 -04:00
dns_resolve.c
dns_resolve.h
file.c NFSv4.1 add nfs_inode book keeping for mdsthreshold 2012-05-24 16:15:48 -04:00
fscache-index.c
fscache.c NFS: Don't pass mount data to nfs_fscache_get_super_cookie() 2012-05-14 17:30:26 -07:00
fscache.h NFS: Fix a compile issue when CONFIG_NFS_FSCACHE was undefined 2012-05-16 10:24:20 -07:00
getroot.c NFS: Create a single nfs_get_root() 2012-05-14 17:30:26 -07:00
idmap.c NFS: Add memory barriers to the nfs_client->cl_cons_state initialisation 2012-05-23 15:24:59 -04:00
inode.c NFS client updates for Linux 3.5 2012-05-29 10:43:51 -07:00
internal.h NFSv4: Fix a race in the net namespace mount notification 2012-05-23 15:21:13 -04:00
iostat.h
Kconfig NFS: Turn v3 on by default 2012-05-14 17:42:22 -07:00
Makefile NFS: Make v2 configurable 2012-05-14 17:42:22 -07:00
mount_clnt.c
namespace.c NFS: Remove extra rpc_clnt argument to proc_lookup 2012-04-27 14:10:39 -04:00
netns.h NFS: Always use the same SETCLIENTID boot verifier 2012-05-22 16:45:46 -04:00
nfs2xdr.c NFS: Create an NFS v3 stat_to_errno() 2012-05-14 17:42:21 -07:00
nfs3acl.c
nfs3proc.c NFS client updates for Linux 3.5 2012-05-29 10:43:51 -07:00
nfs3xdr.c NFS: Create an NFS v3 stat_to_errno() 2012-05-14 17:42:21 -07:00
nfs4_fs.h NFSv4: Fix an Oops in the open recovery code 2012-06-05 10:00:14 -04:00
nfs4filelayout.c NFSv4.1: Handle other occurrences of NFS4ERR_CONN_NOT_BOUND_TO_SESSION 2012-05-27 14:33:07 -04:00
nfs4filelayout.h NFSv4.1 resend LAYOUTGET on data server invalid layout errors 2012-05-19 17:55:33 -04:00
nfs4filelayoutdev.c NFSv4.1: Fix session initialisation races 2012-05-23 15:20:57 -04:00
nfs4namespace.c Merge branch 'bugfixes' into nfs-for-next 2012-05-21 10:12:39 -04:00
nfs4proc.c NFSv4: Fix unnecessary delegation returns in nfs4_do_open 2012-06-08 11:08:42 -04:00
nfs4renewd.c NFS: Add NFSDBG_STATE 2012-05-22 16:45:42 -04:00
nfs4state.c NFSv4.1: Ensure we clear session state flags after a session creation 2012-06-05 10:22:14 -04:00
nfs4xdr.c NFSv4: Fix up decode_attr_mdsthreshold 2012-06-05 10:00:47 -04:00
nfsroot.c
pagelist.c NFS: Clean up - Rename nfs_unlock_request and nfs_unlock_request_dont_release 2012-05-09 15:17:43 -04:00
pnfs_dev.c
pnfs.c NFSv4.1 test the mdsthreshold hint parameters 2012-05-24 16:15:49 -04:00
pnfs.h NFS4: Fix open bug when pnfs module blacklisted 2012-06-07 13:44:24 -04:00
proc.c NFS client updates for Linux 3.5 2012-05-29 10:43:51 -07:00
read.c NFSv4.1 add nfs_inode book keeping for mdsthreshold 2012-05-24 16:15:48 -04:00
super.c NFS4: Set parsed mount data version to 4 2012-06-05 15:50:47 -04:00
symlink.c
sysctl.c
unlink.c
write.c NFS: Fix a commit bug 2012-06-05 18:38:47 -04:00