linux-stable/fs/gfs2
Steven Whitehouse f18185291d GFS2: Fix bug trap and journaled data fsync
Journaled data requires that a complete flush of all dirty data for
the file is done, in order that the ail flush which comes after
will succeed.

Also the recently enhanced bug trap can trigger falsely in case
an ail flush from fsync races with a page read. This updates the
bug trap such that it will ignore buffers which are locked and
only trigger on dirty and/or pinned buffers when the ail flush
is run from fsync. The original bug trap is retained when ail
flush is run from ->go_sync()

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
2011-10-21 12:39:25 +01:00
..
Kconfig GFS2: No longer experimental 2010-09-20 11:18:46 +01:00
Makefile GFS2: Rename ops_inode.c to inode.c 2011-05-10 13:12:49 +01:00
acl.c switch posix_acl_equiv_mode() to umode_t * 2011-08-01 02:10:06 -04:00
acl.h fs: take the ACL checks to common code 2011-07-25 14:30:23 -04:00
aops.c GFS2: Resolve inode eviction and ail list interaction bug 2011-07-14 08:59:44 +01:00
bmap.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 2011-07-22 19:02:39 -07:00
bmap.h GFS2: New truncate sequence 2010-09-20 11:18:16 +01:00
dentry.c gfs2: fix d_revalidate oopsen on NFS exports 2011-03-10 03:44:48 -05:00
dir.c GFS2: Clean up dir hash table reading 2011-10-21 12:39:17 +01:00
dir.h GFS2: Cache dir hash table in a contiguous buffer 2011-07-15 09:31:48 +01:00
export.c GFS2: Make writeback more responsive to system conditions 2011-04-20 09:01:37 +01:00
file.c GFS2: Fix bug trap and journaled data fsync 2011-10-21 12:39:25 +01:00
gfs2.h
glock.c GFS2: Automatically adjust glock min hold time 2011-07-15 09:32:11 +01:00
glock.h GFS2: Automatically adjust glock min hold time 2011-07-15 09:32:11 +01:00
glops.c GFS2: Fix bug trap and journaled data fsync 2011-10-21 12:39:25 +01:00
glops.h GFS2: Clean up fsync() 2011-04-20 09:00:41 +01:00
incore.h GFS2: Fix inode allocation error path 2011-10-21 12:39:23 +01:00
inode.c GFS2: Fix inode allocation error path 2011-10-21 12:39:23 +01:00
inode.h ->permission() sanitizing: don't pass flags to ->permission() 2011-07-20 01:43:24 -04:00
lock_dlm.c GFS2: Fix glock deallocation race 2011-03-09 10:58:04 +00:00
log.c block: separate priority boosting from REQ_META 2011-08-23 14:50:29 +02:00
log.h GFS2: Make writeback more responsive to system conditions 2011-04-20 09:01:37 +01:00
lops.c GFS2: Optimise glock lru and end of life inodes 2011-04-20 09:01:17 +01:00
lops.h
main.c atomic: use <linux/atomic.h> 2011-07-26 16:49:47 -07:00
meta_io.c block: separate priority boosting from REQ_META 2011-08-23 14:50:29 +02:00
meta_io.h GFS2: Remove unused macro 2011-04-20 09:00:24 +01:00
ops_fstype.c block: separate priority boosting from REQ_META 2011-08-23 14:50:29 +02:00
quota.c block: separate priority boosting from REQ_META 2011-08-23 14:50:29 +02:00
quota.h vmscan: change shrinker API by passing shrink_control struct 2011-05-25 08:39:26 -07:00
recovery.c GFS2: Fix spectator umount issue 2010-09-29 14:20:52 +01:00
recovery.h
rgrp.c GFS2: combine duplicated block freeing routines 2011-07-15 09:32:52 +01:00
rgrp.h GFS2: combine duplicated block freeing routines 2011-07-15 09:32:52 +01:00
super.c GFS2: Fix inode allocation error path 2011-10-21 12:39:23 +01:00
super.h
sys.c GFS2: Fix race during filesystem mount 2011-07-12 09:15:46 +01:00
sys.h
trace_gfs2.h GFS2: Add an AIL writeback tracepoint 2011-04-20 09:01:58 +01:00
trans.c
trans.h GFS2: reserve more blocks for transactions 2010-09-28 09:44:24 +01:00
util.c
util.h
xattr.c GFS2: Clean up duplicated setattr code 2010-11-30 10:30:19 +00:00
xattr.h