aboutsummaryrefslogtreecommitdiffstats
path: root/fs/gfs2/glock.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/gfs2/glock.c')
-rw-r--r--fs/gfs2/glock.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c
index 11066d8647d2..90af87ff29ba 100644
--- a/fs/gfs2/glock.c
+++ b/fs/gfs2/glock.c
@@ -1549,16 +1549,13 @@ static void glock_hash_walk(glock_examiner examiner, const struct gfs2_sbd *sdp)
1549 rhashtable_walk_enter(&gl_hash_table, &iter); 1549 rhashtable_walk_enter(&gl_hash_table, &iter);
1550 1550
1551 do { 1551 do {
1552 gl = ERR_PTR(rhashtable_walk_start(&iter)); 1552 rhashtable_walk_start(&iter);
1553 if (IS_ERR(gl))
1554 goto walk_stop;
1555 1553
1556 while ((gl = rhashtable_walk_next(&iter)) && !IS_ERR(gl)) 1554 while ((gl = rhashtable_walk_next(&iter)) && !IS_ERR(gl))
1557 if (gl->gl_name.ln_sbd == sdp && 1555 if (gl->gl_name.ln_sbd == sdp &&
1558 lockref_get_not_dead(&gl->gl_lockref)) 1556 lockref_get_not_dead(&gl->gl_lockref))
1559 examiner(gl); 1557 examiner(gl);
1560 1558
1561walk_stop:
1562 rhashtable_walk_stop(&iter); 1559 rhashtable_walk_stop(&iter);
1563 } while (cond_resched(), gl == ERR_PTR(-EAGAIN)); 1560 } while (cond_resched(), gl == ERR_PTR(-EAGAIN));
1564 1561
@@ -1947,7 +1944,7 @@ static void *gfs2_glock_seq_start(struct seq_file *seq, loff_t *pos)
1947 loff_t n = *pos; 1944 loff_t n = *pos;
1948 1945
1949 rhashtable_walk_enter(&gl_hash_table, &gi->hti); 1946 rhashtable_walk_enter(&gl_hash_table, &gi->hti);
1950 if (rhashtable_walk_start(&gi->hti) != 0) 1947 if (rhashtable_walk_start_check(&gi->hti) != 0)
1951 return NULL; 1948 return NULL;
1952 1949
1953 do { 1950 do {