2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-26 14:14:01 +08:00
linux-next/fs/xfs/linux-2.6
David Chinner e927af90aa [XFS] Block on unwritten extent conversion during synchronous direct I/O.
Currently we do not wait on extent conversion to occur, and hence we can
return to userspace from a synchronous direct I/O write without having
completed all the actions in the write. Hence a read after the write may
see zeroes (unwritten extent) rather than the data that was written.

Block the I/O completion by triggering a synchronous workqueue flush to
ensure that the conversion has occurred before we return to userspace.

SGI-PV: 964092
SGI-Modid: xfs-linux-melb:xfs-kern:28775a

Signed-off-by: David Chinner <dgc@sgi.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>
2007-07-14 15:30:52 +10:00
..
kmem.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
kmem.h [XFS] Use generic shrinker interfaces in XFS. 2007-07-14 15:23:53 +10:00
mrlock.h [XFS] Add lockdep support for XFS 2007-05-08 13:50:19 +10:00
mutex.h [XFS] mutex fallout - fix debug builds and remove no-longer-useful comment. 2006-01-16 16:21:34 +11:00
sema.h [XFS] standardize on one sema init macro 2006-09-28 11:05:46 +10:00
spin.h [XFS] Update license/copyright notices to match the prefered SGI 2005-11-02 14:58:39 +11:00
sv.h [XFS] Collapse sv_init and init_sv into just the one interface. 2006-09-28 11:05:52 +10:00
time.h [XFS] Update license/copyright notices to match the prefered SGI 2005-11-02 14:58:39 +11:00
xfs_aops.c [XFS] Block on unwritten extent conversion during synchronous direct I/O. 2007-07-14 15:30:52 +10:00
xfs_aops.h [PATCH] mark address_space_operations const 2006-06-28 14:59:04 -07:00
xfs_buf.c [XFS] Flush the block device before closing it on unmount. 2007-07-14 15:30:05 +10:00
xfs_buf.h [XFS] Only use refcounted pages for I/O 2007-07-14 15:21:14 +10:00
xfs_cred.h [PATCH] move capable() to capability.h 2006-01-11 18:42:13 -08:00
xfs_dmapi_priv.h [XFS] Remove KERNEL_VERSION macros from xfs_dmapi.h 2006-11-11 18:05:06 +11:00
xfs_export.c [XFS] Keep stack usage down for 4k stacks by using noinline. 2007-02-10 18:34:56 +11:00
xfs_export.h [XFS] We really suck at spulling. Thanks to Chris Pascoe for fixing all 2006-03-29 08:55:14 +10:00
xfs_file.c sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00
xfs_fs_subr.c [XFS] propogate return codes from flush routines 2007-05-08 13:49:27 +10:00
xfs_fs_subr.h [XFS] propogate return codes from flush routines 2007-05-08 13:49:27 +10:00
xfs_globals.c [XFS] Improve error handling for the zero-fsblock extent detection code. 2006-09-28 11:03:20 +10:00
xfs_globals.h [XFS] Update license/copyright notices to match the prefered SGI 2005-11-02 14:58:39 +11:00
xfs_ioctl32.c [PATCH] xfs: change uses of f_{dentry,vfsmnt} to use f_path 2006-12-08 08:28:43 -08:00
xfs_ioctl32.h [XFS] Fix compiler warning from xfs_file_compat_invis_ioctl prototype. 2006-03-20 13:25:48 +11:00
xfs_ioctl.c [XFS] Remove unused header files for MAC and CAP checking functionality. 2007-02-10 18:37:28 +11:00
xfs_iops.c [PATCH] mark struct inode_operations const 3 2007-02-12 09:48:46 -08:00
xfs_iops.h [PATCH] mark struct inode_operations const 3 2007-02-12 09:48:46 -08:00
xfs_linux.h sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00
xfs_lrw.c sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00
xfs_lrw.h sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00
xfs_stats.c [PATCH] for_each_possible_cpu: xfs 2006-06-23 07:42:45 -07:00
xfs_stats.h [XFS] Complete the pagebuf -> xfs_buf naming convention transition, 2006-01-11 15:39:08 +11:00
xfs_super.c [XFS] Lazy Superblock Counters 2007-07-14 15:28:50 +10:00
xfs_super.h [XFS] Resolve a namespace collision on vnode/vnodeops for FreeBSD porters. 2006-06-09 17:00:52 +10:00
xfs_sysctl.c [PATCH] sysctl: remove insert_at_head from register_sysctl 2007-02-14 08:09:59 -08:00
xfs_sysctl.h [XFS] Add degframentation exclusion support 2006-06-09 14:54:19 +10:00
xfs_version.h [XFS] Update license/copyright notices to match the prefered SGI 2005-11-02 14:58:39 +11:00
xfs_vfs.c [XFS] Remove version 1 directory code. Never functioned on Linux, just 2006-06-20 13:04:51 +10:00
xfs_vfs.h [XFS] Lazy Superblock Counters 2007-07-14 15:28:50 +10:00
xfs_vnode.c [XFS] Keep stack usage down for 4k stacks by using noinline. 2007-02-10 18:34:56 +11:00
xfs_vnode.h sendfile: remove .sendfile from filesystems that use generic_file_sendfile() 2007-07-10 08:04:13 +02:00