diff options
-rw-r--r-- | fs/gfs2/glock.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c index 72346f3306e4..675bfec77706 100644 --- a/fs/gfs2/glock.c +++ b/fs/gfs2/glock.c @@ -594,6 +594,8 @@ static void finish_xmote(struct gfs2_glock *gl, unsigned int ret) list_move_tail(&gh->gh_list, &gl->gl_holders); gh = find_first_waiter(gl); gl->gl_target = gh->gh_state; + if (do_promote(gl)) + goto out; goto retry; } /* Some error or failed "try lock" - report it */ |