[GFS2] Fix glock hash clearing
A one liner bug fix to prevent the return value being
wrong when more than one superblock is mounted.
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c
index 2316490..64a1676 100644
--- a/fs/gfs2/glock.c
+++ b/fs/gfs2/glock.c
@@ -1892,7 +1892,6 @@
/* Can't use hlist_for_each_entry - don't want prefetch here */
if (hlist_empty(head))
goto out;
- has_entries = 1;
gl = list_entry(head->first, struct gfs2_glock, gl_list);
while(1) {
if (gl->gl_sbd == sdp) {
@@ -1902,6 +1901,7 @@
gfs2_glock_put(prev);
prev = gl;
examiner(gl);
+ has_entries = 1;
read_lock(gl_lock_addr(hash));
}
if (gl->gl_list.next == NULL)