From 00e94493d06de69c8701608502a60606b54f3f4d Mon Sep 17 00:00:00 2001 From: Steven Whitehouse Date: Wed, 5 Jul 2006 13:16:19 -0400 Subject: [PATCH] --- yaml --- r: 38739 b: refs/heads/master c: 627add2d1385394d020c84533c91ad26bc37b166 h: refs/heads/master i: 38737: 22e12069fc5a92b054b4e0a4fb7d5023ce615977 38735: 2821f0b69e52defe4ff63c2064c99bfc51d4992f v: v3 --- [refs] | 2 +- trunk/fs/gfs2/glock.c | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 14e5a4a182ec..b5a2336f5180 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: fd4de2d41a9de2d949b0850d637aa84616f87ab8 +refs/heads/master: 627add2d1385394d020c84533c91ad26bc37b166 diff --git a/trunk/fs/gfs2/glock.c b/trunk/fs/gfs2/glock.c index dbeb4ad836bd..7f362d0c3f7a 100644 --- a/trunk/fs/gfs2/glock.c +++ b/trunk/fs/gfs2/glock.c @@ -1967,8 +1967,11 @@ static void scan_glock(struct gfs2_glock *gl) if (gfs2_glmutex_trylock(gl)) { if (gl->gl_ops == &gfs2_inode_glops) { struct gfs2_inode *ip = gl->gl_object; - if (ip) + if (ip == NULL) { + struct gfs2_sbd *sdp = gl->gl_sbd; + gfs2_assert_withdraw(sdp, gl->gl_state == LM_ST_UNLOCKED); goto out_schedule; + } } if (queue_empty(gl, &gl->gl_holders) && gl->gl_state != LM_ST_UNLOCKED && @@ -1982,7 +1985,7 @@ static void scan_glock(struct gfs2_glock *gl) return; - out_schedule: +out_schedule: gfs2_glmutex_unlock(gl); gfs2_glock_schedule_for_reclaim(gl); gfs2_glock_put(gl);