summaryrefslogtreecommitdiffstats
path: root/fs/gfs2
diff options
context:
space:
mode:
authorSteven Whitehouse2011-05-05 13:36:38 +0200
committerSteven Whitehouse2011-05-05 13:36:38 +0200
commit588da3b3be8b3225c2dd192aa782bf6c5c32eb84 (patch)
tree857beb3294af78b926e9e5d95ed2d97b0c9c909b /fs/gfs2
parentGFS2: Double check link count under glock (diff)
downloadkernel-qcow2-linux-588da3b3be8b3225c2dd192aa782bf6c5c32eb84.tar.gz
kernel-qcow2-linux-588da3b3be8b3225c2dd192aa782bf6c5c32eb84.tar.xz
kernel-qcow2-linux-588da3b3be8b3225c2dd192aa782bf6c5c32eb84.zip
GFS2: Don't use a try lock when promoting to a higher mode
Previously we marked all locks being promoted to a higher mode with the try flag to avoid any potential deadlocks issues. The DLM is able to detect these and report them in way that GFS2 can deal with them correctly. So we can just request the required mode and wait for a response without needing to perform this check. Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs/gfs2')
-rw-r--r--fs/gfs2/glock.c5
1 files changed, 0 insertions, 5 deletions
diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c
index eed4b6855614..ee2178d661f5 100644
--- a/fs/gfs2/glock.c
+++ b/fs/gfs2/glock.c
@@ -543,11 +543,6 @@ __acquires(&gl->gl_spin)
clear_bit(GLF_INVALIDATE_IN_PROGRESS, &gl->gl_flags);
gfs2_glock_hold(gl);
- if (target != LM_ST_UNLOCKED && (gl->gl_state == LM_ST_SHARED ||
- gl->gl_state == LM_ST_DEFERRED) &&
- !(lck_flags & (LM_FLAG_TRY | LM_FLAG_TRY_1CB)))
- lck_flags |= LM_FLAG_TRY_1CB;
-
if (sdp->sd_lockstruct.ls_ops->lm_lock) {
/* lock_dlm */
ret = sdp->sd_lockstruct.ls_ops->lm_lock(gl, target, lck_flags);