Josef Bacik
02c24a8218
fs: push i_mutex and filemap_write_and_wait down into ->fsync() handlers
...
Btrfs needs to be able to control how filemap_write_and_wait_range() is called
in fsync to make it less of a painful operation, so push down taking i_mutex and
the calling of filemap_write_and_wait() down into the ->fsync() handlers. Some
file systems can drop taking the i_mutex altogether it seems, like ext3 and
ocfs2. For correctness sake I just pushed everything down in all cases to make
sure that we keep the current behavior the same for everybody, and then each
individual fs maintainer can make up their mind about what to do from there.
Thanks,
Acked-by: Jan Kara <jack@suse.cz>
Signed-off-by: Josef Bacik <josef@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2011-07-20 20:47:59 -04:00
..
objlayout
NFSv4.1: Fix some issues with pnfs_generic_pg_test
2011-06-21 11:54:05 -04:00
cache_lib.c
switch vfs_path_lookup() to struct path
2011-07-20 01:44:14 -04:00
cache_lib.h
callback.c
NFS do not find client in NFSv4 pg_authenticate
2011-01-25 15:26:51 -05:00
callback.h
pnfs: CB_NOTIFY_DEVICEID
2011-05-29 20:52:31 +03:00
callback_proc.c
pnfs: Use byte-range for cb_layoutrecall
2011-05-29 20:52:34 +03:00
callback_xdr.c
pnfs: CB_NOTIFY_DEVICEID
2011-05-29 20:52:31 +03:00
client.c
NFSv4.1: purge deviceid cache on nfs_free_client
2011-05-29 20:50:42 +03:00
delegation.c
nfs,rcu: convert call_rcu(nfs_free_delegation_callback) to kfree_rcu()
2011-05-27 17:42:46 -04:00
delegation.h
NFS: Move cl_delegations to the nfs_server struct
2011-01-06 14:57:46 -05:00
dir.c
fs: push i_mutex and filemap_write_and_wait down into ->fsync() handlers
2011-07-20 20:47:59 -04:00
direct.c
nfs_open_context doesn't need struct path either
2011-07-20 01:43:44 -04:00
dns_resolve.c
sunrpc: use seconds since boot in expiry cache
2010-09-07 19:21:20 -04:00
dns_resolve.h
file.c
fs: push i_mutex and filemap_write_and_wait down into ->fsync() handlers
2011-07-20 20:47:59 -04:00
fscache-index.c
fscache.c
FS-Cache: Add a helper to bulk uncache pages on an inode
2011-07-07 13:21:56 -07:00
fscache.h
getroot.c
Merge branch 'nfs-for-2.6.39' into nfs-for-next
2011-03-24 17:03:14 -04:00
idmap.c
NFSv4: Send unmapped uid/gids to the server when using auth_sys
2011-03-11 15:39:27 -05:00
inode.c
nfs_open_context doesn't need struct path either
2011-07-20 01:43:44 -04:00
internal.h
NFSv4.1: allow nfs_fhget to succeed with mounted on fileid
2011-06-15 11:24:29 -04:00
iostat.h
Kconfig
pnfs-obj: objlayoutdriver module skeleton
2011-05-29 20:52:35 +03:00
Makefile
pnfs-obj: objlayoutdriver module skeleton
2011-05-29 20:52:35 +03:00
mount_clnt.c
NFS: Remove redundant unlikely()
2010-12-21 11:51:23 -05:00
namespace.c
NFS: Remove unused argument from nfs_find_best_sec()
2011-04-12 19:34:23 -04:00
nfs2xdr.c
Merge branch 'bugfixes' into nfs-for-2.6.38
2011-01-10 14:48:02 -05:00
nfs3acl.c
NFS: Prevent memory allocation failure in nfsacl_encode()
2011-01-25 15:24:47 -05:00
nfs3proc.c
NFS: lookup supports alternate client
2011-03-24 13:52:41 -04:00
nfs3xdr.c
NFS: Fix "kernel BUG at fs/nfs/nfs3xdr.c:1338!"
2011-01-25 15:24:47 -05:00
nfs4_fs.h
nfs4_closedata doesn't need to mess with struct path
2011-07-20 01:43:41 -04:00
nfs4filelayout.c
pnfs: write: Set mds_offset in the generic layer - it is needed by all LDs
2011-06-28 14:12:11 -04:00
nfs4filelayout.h
NFSv4.1: purge deviceid cache on nfs_free_client
2011-05-29 20:50:42 +03:00
nfs4filelayoutdev.c
SUNRPC: introduce xdr_init_decode_pages
2011-05-29 20:52:32 +03:00
nfs4namespace.c
nfs: nfs_do_{ref,sub}mount() superblock argument is redundant
2011-03-16 16:48:06 -04:00
nfs4proc.c
nfs_open_context doesn't need struct path either
2011-07-20 01:43:44 -04:00
nfs4renewd.c
NFSv4.1: new flag for state renewal check
2011-03-11 15:38:41 -05:00
nfs4state.c
nfs4_closedata doesn't need to mess with struct path
2011-07-20 01:43:41 -04:00
nfs4xdr.c
NFSv4.1: update nfs4_fattr_bitmap_maxsz
2011-07-11 19:14:38 -04:00
nfsroot.c
NFS: Revert NFSROOT default mount options
2011-05-27 17:42:47 -04:00
pagelist.c
nfs_open_context doesn't need struct path either
2011-07-20 01:43:44 -04:00
pnfs.c
NFSv4.1: Fix an off-by-one error in pnfs_generic_pg_test
2011-06-21 11:54:06 -04:00
pnfs.h
NFS: fix umount of pnfs filesystems
2011-06-15 11:23:02 -04:00
pnfs_dev.c
NFSv4.1: Fix a refcounting issue in the pNFS device id cache
2011-06-15 11:24:29 -04:00
proc.c
NFS: lookup supports alternate client
2011-03-24 13:52:41 -04:00
read.c
nfs_open_context doesn't need struct path either
2011-07-20 01:43:44 -04:00
super.c
switch vfs_path_lookup() to struct path
2011-07-20 01:44:14 -04:00
symlink.c
sysctl.c
NFS: new idmapper
2010-10-07 18:48:49 -04:00
unlink.c
nfs: store devname at disconnected NFS roots
2011-03-16 16:44:24 -04:00
write.c
nfs_open_context doesn't need struct path either
2011-07-20 01:43:44 -04:00