Commit de3e7f97 authored by Andreas Gruenbacher's avatar Andreas Gruenbacher

gfs2: do_promote cleanup

Change function do_promote to return true on success, and false
otherwise.
Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
parent dc0b9435
...@@ -468,10 +468,10 @@ int gfs2_instantiate(struct gfs2_holder *gh) ...@@ -468,10 +468,10 @@ int gfs2_instantiate(struct gfs2_holder *gh)
* do_promote - promote as many requests as possible on the current queue * do_promote - promote as many requests as possible on the current queue
* @gl: The glock * @gl: The glock
* *
* Returns: 1 if there is a blocked holder at the head of the list * Returns true on success (i.e., progress was made or there are no waiters).
*/ */
static int do_promote(struct gfs2_glock *gl) static bool do_promote(struct gfs2_glock *gl)
{ {
struct gfs2_holder *gh, *current_gh; struct gfs2_holder *gh, *current_gh;
...@@ -484,10 +484,10 @@ static int do_promote(struct gfs2_glock *gl) ...@@ -484,10 +484,10 @@ static int do_promote(struct gfs2_glock *gl)
* If we get here, it means we may not grant this * If we get here, it means we may not grant this
* holder for some reason. If this holder is at the * holder for some reason. If this holder is at the
* head of the list, it means we have a blocked holder * head of the list, it means we have a blocked holder
* at the head, so return 1. * at the head, so return false.
*/ */
if (list_is_first(&gh->gh_list, &gl->gl_holders)) if (list_is_first(&gh->gh_list, &gl->gl_holders))
return 1; return false;
do_error(gl, 0); do_error(gl, 0);
break; break;
} }
...@@ -497,7 +497,7 @@ static int do_promote(struct gfs2_glock *gl) ...@@ -497,7 +497,7 @@ static int do_promote(struct gfs2_glock *gl)
if (!current_gh) if (!current_gh)
current_gh = gh; current_gh = gh;
} }
return 0; return true;
} }
/** /**
...@@ -834,7 +834,7 @@ __acquires(&gl->gl_lockref.lock) ...@@ -834,7 +834,7 @@ __acquires(&gl->gl_lockref.lock)
} else { } else {
if (test_bit(GLF_DEMOTE, &gl->gl_flags)) if (test_bit(GLF_DEMOTE, &gl->gl_flags))
gfs2_demote_wake(gl); gfs2_demote_wake(gl);
if (do_promote(gl) == 0) if (do_promote(gl))
goto out_unlock; goto out_unlock;
gh = find_first_waiter(gl); gh = find_first_waiter(gl);
gl->gl_target = gh->gh_state; gl->gl_target = gh->gh_state;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment