diff options
author | Steven Whitehouse <swhiteho@redhat.com> | 2011-05-05 12:36:38 +0100 |
---|---|---|
committer | Steven Whitehouse <swhiteho@redhat.com> | 2011-05-05 12:36:38 +0100 |
commit | 588da3b3be8b3225c2dd192aa782bf6c5c32eb84 (patch) | |
tree | 857beb3294af78b926e9e5d95ed2d97b0c9c909b | |
parent | d192a8e5c6fec4fe8cdafebccc415db4074dee88 (diff) | |
download | op-kernel-dev-588da3b3be8b3225c2dd192aa782bf6c5c32eb84.zip op-kernel-dev-588da3b3be8b3225c2dd192aa782bf6c5c32eb84.tar.gz |
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>
-rw-r--r-- | fs/gfs2/glock.c | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c index eed4b68..ee2178d 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); |