kernel_optimize_test/fs/nfs
Jeff Layton 83bfff23e9 nfs4: have do_vfs_lock take an inode pointer
Now that we have file locking helpers that can deal with an inode
instead of a filp, we can change the NFSv4 locking code to use that
instead.

This should fix the case where we have a filp that is closed while flock
or OFD locks are set on it, and the task is signaled so that it doesn't
wait for the LOCKU reply to come in before the filp is freed. At that
point we can end up with a use-after-free with the current code, which
relies on dereferencing the fl_file in the lock request.

Signed-off-by: Jeff Layton <jeff.layton@primarydata.com>
Reviewed-by: "J. Bruce Fields" <bfields@fieldses.org>
Tested-by: "J. Bruce Fields" <bfields@fieldses.org>
2015-07-13 06:29:11 -04:00
..
blocklayout
filelayout writeback: separate out include/linux/backing-dev-defs.h 2015-06-02 08:33:34 -06:00
flexfilelayout pNFS/flexfiles: Fix the reset of struct pgio_header when resending 2015-06-26 15:39:50 -04:00
objlayout
cache_lib.c
cache_lib.h
callback_proc.c NFS: Ensure that we update the sequence id under the slot table lock 2015-06-11 21:15:52 -04:00
callback_xdr.c NFS: Convert use of __constant_htonl to htonl 2015-06-10 18:57:59 -04:00
callback.c nfs: deny backchannel RPCs with an incorrect authflavor instead of dropping them 2015-06-11 14:06:34 -04:00
callback.h
client.c nfs: Use remove_proc_subtree() instead remove_proc_entry() 2015-07-01 11:29:41 -04:00
delegation.c
delegation.h
dir.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2015-07-04 19:36:06 -07:00
direct.c NFS client updates for Linux 4.1 2015-04-26 17:33:59 -07:00
dns_resolve.c
dns_resolve.h
file.c sunrpc: keep a count of swapfiles associated with the rpc_clnt 2015-06-10 18:26:14 -04:00
fscache-index.c
fscache.c
fscache.h
getroot.c
inode.c nfs: Remove unneeded micro checking of CONFIG_PROC_FS 2015-07-01 11:30:45 -04:00
internal.h writeback: move backing_dev_info->bdi_stat[] into bdi_writeback 2015-06-02 08:33:34 -06:00
iostat.h
Kconfig
Makefile
mount_clnt.c
namespace.c
netns.h
nfs.h
nfs2super.c
nfs2xdr.c
nfs3_fs.h
nfs3acl.c
nfs3client.c
nfs3proc.c
nfs3super.c
nfs3xdr.c NFS: Fix size of NFSACL SETACL operations 2015-06-02 08:55:28 -04:00
nfs4_fs.h NFSv.2/pnfs Add a LAYOUTSTATS rpc function 2015-06-24 10:17:37 -04:00
nfs4client.c nfs: Drop bad comment in nfs41_walk_client_list() 2015-07-01 11:30:59 -04:00
nfs4file.c nfs: verify open flags before allowing open 2015-06-25 19:38:00 -04:00
nfs4getroot.c nfs: Remove invalid NFS_ATTR_FATTR_V4_REFERRAL checking in nfs4_get_rootfh 2015-07-01 11:31:22 -04:00
nfs4idmap.c NFS: drop unneeded goto 2015-06-02 08:55:28 -04:00
nfs4idmap.h
nfs4namespace.c
nfs4proc.c nfs4: have do_vfs_lock take an inode pointer 2015-07-13 06:29:11 -04:00
nfs4renewd.c
nfs4session.c
nfs4session.h
nfs4state.c NFSv4: Always drain the slot table before re-establishing the lease 2015-06-02 08:55:27 -04:00
nfs4super.c
nfs4sysctl.c
nfs4trace.c
nfs4trace.h
nfs4xdr.c NFSv.2/pnfs Add a LAYOUTSTATS rpc function 2015-06-24 10:17:37 -04:00
nfs42.h NFSv.2/pnfs Add a LAYOUTSTATS rpc function 2015-06-24 10:17:37 -04:00
nfs42proc.c NFSv4.2: LAYOUTSTATS is optional to implement 2015-06-27 11:48:58 -04:00
nfs42xdr.c NFSv4.2: Fix up a decoding error in layoutstats 2015-06-27 11:30:57 -04:00
nfsroot.c
nfstrace.c
nfstrace.h
pagelist.c nfs: Remove invalid tk_pid from debug message 2015-07-01 11:31:25 -04:00
pnfs_dev.c
pnfs_nfs.c
pnfs.c NFSv4.2: LAYOUTSTATS is optional to implement 2015-06-27 11:48:58 -04:00
pnfs.h nfs: provide pnfs_report_layoutstat when NFS42 is disabled 2015-06-26 14:01:37 -04:00
proc.c
read.c NFS client updates for Linux 4.1 2015-04-26 17:33:59 -07:00
super.c kernel/params: constify struct kernel_param_ops uses 2015-05-28 11:32:10 +09:30
symlink.c don't pass nameidata to ->follow_link() 2015-05-10 22:20:15 -04:00
sysctl.c
unlink.c
write.c NFS client updates for Linux 4.2 2015-07-02 11:32:23 -07:00