alistair23-linux/fs/gfs2
Steven Whitehouse d5341a9241 GFS2: Make "try" lock not try quite so hard
This looks like a big change, but in reality its only a single line of actual
code change, the rest is just moving a function to before its new caller.
The "try" flag for glocks is a rather subtle and delicate setting since it
requires that the state machine tries just hard enough to ensure that it has
a good chance of getting the requested lock, but no so hard that the
request can land up blocked behind another.

The patch adds in an additional check which will fail any queued try
locks if there is another request blocking the try lock request which
is not granted and compatible, nor in progress already. The check is made
only after all pending locks which may be granted have been granted.

I've checked this with the reproducer for the reported flock bug which
this is intended to fix, and it now passes.

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
2010-07-29 09:37:38 +01:00
..
acl.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes 2010-05-25 08:17:51 -07:00
acl.h gfs: constify xattr_handler 2010-05-21 18:31:20 -04:00
aops.c GFS2: Simplify gfs2_write_alloc_required 2010-07-29 09:36:56 +01:00
bmap.c GFS2: Simplify gfs2_write_alloc_required 2010-07-29 09:36:56 +01:00
bmap.h GFS2: Simplify gfs2_write_alloc_required 2010-07-29 09:36:56 +01:00
dentry.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
dir.c GFS2: remove dependency on __GFP_NOFAIL 2010-07-29 09:37:18 +01:00
dir.h
export.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw 2010-05-21 07:29:15 -07:00
file.c GFS2: Simplify gfs2_write_alloc_required 2010-07-29 09:36:56 +01:00
gfs2.h
glock.c GFS2: Make "try" lock not try quite so hard 2010-07-29 09:37:38 +01:00
glock.h
glops.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
glops.h
incore.h GFS2: Wait for journal id on mount if not specified on mount command line 2010-07-29 09:36:35 +01:00
inode.c GFS2: Fix kernel NULL pointer dereference by dlm_astd 2010-07-15 09:06:25 +01:00
inode.h GFS2: Rework reclaiming unlinked dinodes 2010-05-21 16:11:36 +01:00
Kconfig GFS2: do not select QUOTA 2010-03-09 10:08:36 +00:00
lock_dlm.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
log.c GFS2: Rework reclaiming unlinked dinodes 2010-05-21 16:11:36 +01:00
log.h GFS2: Rework reclaiming unlinked dinodes 2010-05-21 16:11:36 +01:00
lops.c GFS2: Various gfs2_logd improvements 2010-05-05 09:39:18 +01:00
lops.h
main.c GFS2: Remove space from slab cache name 2010-03-29 14:26:49 +01:00
Makefile
meta_io.c GFS2: Eliminate useless err variable 2010-05-12 09:52:50 +01:00
meta_io.h
ops_fstype.c GFS2: Wait for journal id on mount if not specified on mount command line 2010-07-29 09:36:35 +01:00
ops_inode.c kill spurious reference to vmtruncate 2010-05-27 22:15:42 -04:00
quota.c GFS2: Simplify gfs2_write_alloc_required 2010-07-29 09:36:56 +01:00
quota.h mm: add context argument to shrinker callback 2010-07-19 14:56:17 +10:00
recovery.c
recovery.h
rgrp.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes 2010-05-25 08:17:51 -07:00
rgrp.h include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
super.c GFS2: Simplify gfs2_write_alloc_required 2010-07-29 09:36:56 +01:00
super.h gfs: constify xattr_handler 2010-05-21 18:31:20 -04:00
sys.c GFS2: Wait for journal id on mount if not specified on mount command line 2010-07-29 09:36:35 +01:00
sys.h
trace_gfs2.h
trans.c GFS2: Various gfs2_logd improvements 2010-05-05 09:39:18 +01:00
trans.h
util.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
util.h
xattr.c gfs: constify xattr_handler 2010-05-21 18:31:20 -04:00
xattr.h