linux/fs/nfs
Trond Myklebust e71708d4df pNFS: Return RW layouts on OPEN_DOWNGRADE
If the client holds no more writeable open state, and does not hold a
write delegation, then send a layoutreturn as part of the OPEN_DOWNGRADE.

We do this only for writes, since some layout drivers may require you to
also hold a read layout if you are doing a R/W workload.

Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
2016-12-19 17:29:55 -05:00
..
blocklayout pnfs/blocklayout: fix last_write_offset incorrectly set to page boundary 2016-10-13 16:42:53 -04:00
filelayout NFSv4.1: nfs4_fl_prepare_ds must be careful about reporting success. 2016-12-19 17:29:48 -05:00
flexfilelayout pNFS/flexfiles: delete deviceid, don't mark inactive 2016-12-19 17:29:45 -05:00
objlayout pNFS: Get rid of unnecessary layout parameter in encode_layoutreturn callback 2016-12-01 17:21:44 -05:00
cache_lib.c NFS: cache_lib: use complete() instead of complete_all() 2016-09-23 09:40:12 -04:00
cache_lib.h
callback_proc.c pNFS: Delay getting the layout header in CB_LAYOUTRECALL handlers 2016-12-01 17:21:42 -05:00
callback_xdr.c nfs: add handling for CB_NOTIFY_LOCK in client 2016-09-22 13:56:04 -04:00
callback.c NFSv4.x: hide array-bounds warning 2016-11-22 16:11:44 -05:00
callback.h nfs: add handling for CB_NOTIFY_LOCK in client 2016-09-22 13:56:04 -04:00
client.c NFS: Remove unused authflavour parameter from nfs_get_client() 2016-12-01 17:46:32 -05:00
delegation.c NFSv4: Optimise away forced revalidation when we know the attributes are OK 2016-12-01 17:21:37 -05:00
delegation.h NFSv4: nfs_inode_find_state_and_recover() should check all stateids 2016-09-27 14:34:35 -04:00
dir.c NFS: Fix and clean up the access cache validity checking 2016-12-19 17:29:39 -05:00
direct.c NFS: Remove unused argument from nfs_direct_write_complete() 2016-12-01 17:50:37 -05:00
dns_resolve.c
dns_resolve.h
file.c NFS: Clean up cache validity checking 2016-12-19 17:29:35 -05:00
fscache-index.c
fscache.c
fscache.h
getroot.c
inode.c NFS: Clean up nfs_attribute_timeout() 2016-12-19 17:29:44 -05:00
internal.h NFS: Clean up cache validity checking 2016-12-19 17:29:35 -05:00
io.c
iostat.h
Kconfig
Makefile
mount_clnt.c
namespace.c NFS: Trim extra slash in v4 nfs_path 2016-10-24 12:06:01 -04:00
netns.h fs: nfs: Make nfs boot time y2038 safe 2016-10-04 16:20:26 -04:00
nfs2super.c
nfs2xdr.c
nfs3_fs.h
nfs3acl.c
nfs3client.c NFS: Remove unused authflavour parameter from nfs_get_client() 2016-12-01 17:46:32 -05:00
nfs3proc.c vfs: Remove {get,set,remove}xattr inode operations 2016-10-07 21:48:36 -04:00
nfs3super.c
nfs3xdr.c
nfs4_fs.h NFSv4: change nfs4_select_rw_stateid to take a lock_context inplace of lock_owner 2016-12-01 17:57:56 -05:00
nfs4client.c NFS: Remove unused authflavour parameter from nfs_get_client() 2016-12-01 17:46:32 -05:00
nfs4file.c NFSv4: add flock_owner to open context 2016-12-01 17:57:27 -05:00
nfs4getroot.c
nfs4idmap.c
nfs4idmap.h
nfs4namespace.c
nfs4proc.c NFSv4: Don't discard the attributes returned by asynchronous DELEGRETURN 2016-12-19 17:29:29 -05:00
nfs4renewd.c
nfs4session.c NFSv4.1: Fix regression in callback retry handling 2016-12-01 17:21:38 -05:00
nfs4session.h NFSv4.1: Don't deadlock the state manager on the SEQUENCE status flags 2016-09-27 14:31:27 -04:00
nfs4state.c NFS: Don't disconnect open-owner on NFS4ERR_BAD_SEQID 2016-12-19 17:29:51 -05:00
nfs4super.c
nfs4sysctl.c
nfs4trace.c
nfs4trace.h
nfs4xdr.c NFSv4: Add encode/decode of the layoutreturn op in OPEN_DOWNGRADE 2016-12-19 17:29:52 -05:00
nfs42.h
nfs42proc.c pNFS/flexfiles: Minor refactoring before adding iostats to layoutreturn 2016-12-03 15:37:45 -05:00
nfs42xdr.c pNFS/flexfiles: Minor refactoring before adding iostats to layoutreturn 2016-12-03 15:37:45 -05:00
nfs.h
nfsroot.c
nfstrace.c
nfstrace.h
pagelist.c NFS: discard nfs_lockowner structure. 2016-12-01 17:58:13 -05:00
pnfs_dev.c
pnfs_nfs.c NFS: Remove unused authflavour parameter from nfs_get_client() 2016-12-01 17:46:32 -05:00
pnfs.c pNFS: Return RW layouts on OPEN_DOWNGRADE 2016-12-19 17:29:55 -05:00
pnfs.h pNFS/flexfiles: Minor refactoring before adding iostats to layoutreturn 2016-12-03 15:37:45 -05:00
proc.c fs: rename "rename2" i_op to "rename" 2016-09-27 11:03:58 +02:00
read.c mm: remove page_file_index 2016-10-07 18:46:28 -07:00
super.c NFS: fix typo in parameter description 2016-12-01 18:00:11 -05:00
symlink.c
sysctl.c
unlink.c
write.c NFS: discard nfs_lockowner structure. 2016-12-01 17:58:13 -05:00