linux/fs/xfs/linux-2.6
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
..
kmem.c xfs: Convert linux-2.6/ files to new logging interface 2011-03-07 10:00:35 +11:00
kmem.h
mrlock.h
time.h
xfs_acl.c ->permission() sanitizing: don't pass flags to ->check_acl() 2011-07-20 01:43:21 -04:00
xfs_aops.c fs: move inode_dio_done to the end_io handler 2011-07-20 20:47:50 -04:00
xfs_aops.h xfs: kill xfs_iomap 2010-12-16 16:05:51 -06:00
xfs_buf.c vmscan: change shrinker API by passing shrink_control struct 2011-05-25 08:39:26 -07:00
xfs_buf.h xfs: reset buffer pointers before freeing them 2011-05-19 12:03:45 -05:00
xfs_discard.c xfs: add online discard support 2011-05-24 11:17:13 -05:00
xfs_discard.h xfs: add online discard support 2011-05-24 11:17:13 -05:00
xfs_export.c exportfs: Return the minimum required handle size 2011-03-14 09:15:28 -04:00
xfs_export.h
xfs_file.c fs: push i_mutex and filemap_write_and_wait down into ->fsync() handlers 2011-07-20 20:47:59 -04:00
xfs_fs_subr.c
xfs_globals.c xfs: remove xfs_cred.h 2010-10-18 15:08:06 -05:00
xfs_ioctl32.c xfs: add an x86 compat handler for XFS_IOC_ZERO_RANGE 2011-04-28 13:27:46 -05:00
xfs_ioctl32.h xfs: add an x86 compat handler for XFS_IOC_ZERO_RANGE 2011-04-28 13:27:46 -05:00
xfs_ioctl.c xfs: preallocation transactions do not need to be synchronous 2011-03-26 09:13:08 +11:00
xfs_ioctl.h
xfs_iops.c xfs: fix ->mknod() return value on xfs_get_acl() failure 2011-06-14 11:02:13 -05:00
xfs_iops.h
xfs_linux.h xfs: reduce the number of pagb_lock roundtrips in xfs_alloc_clear_busy 2011-04-28 13:18:09 -05:00
xfs_message.c xfs: kill off xfs_printk() 2011-05-19 11:38:09 -05:00
xfs_message.h xfs: kill off xfs_printk() 2011-05-19 11:38:09 -05:00
xfs_quotaops.c
xfs_stats.c
xfs_stats.h
xfs_super.c xfs: make use of new shrinker callout for the inode cache 2011-07-20 20:47:42 -04:00
xfs_super.h xfs: remove xfs_version.h 2010-10-18 15:08:04 -05:00
xfs_sync.c xfs: make use of new shrinker callout for the inode cache 2011-07-20 20:47:42 -04:00
xfs_sync.h xfs: make use of new shrinker callout for the inode cache 2011-07-20 20:47:42 -04:00
xfs_sysctl.c xfs: Convert linux-2.6/ files to new logging interface 2011-03-07 10:00:35 +11:00
xfs_sysctl.h
xfs_trace.c
xfs_trace.h xfs: fix compiler warning in xfs_trace.h 2011-04-28 13:27:06 -05:00
xfs_vnode.h
xfs_xattr.c