GFS2: Pull request (fix)

From: Steven Whitehouse
Date: Sat May 09 2009 - 13:47:58 EST


Hi,

Please consider pulling the following patch,

Steve.

---------------------------------------------------------------------------
The following changes since commit 091bf7624d1c90cec9e578a18529f615213ff847:
Linus Torvalds (1):
Linux 2.6.30-rc5

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes.git master

Steven Whitehouse (1):
GFS2: Fix glock ref counting bug

fs/gfs2/glock.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)

----------------------------------------------------------------------
>From 0c7a531a200480c7bc447260376973d830da9069 Mon Sep 17 00:00:00 2001
From: Steven Whitehouse <swhiteho@xxxxxxxxxx>
Date: Thu, 30 Apr 2009 14:52:58 +0100
Subject: [PATCH] GFS2: Fix glock ref counting bug

Depending on the ordering of events as we go around the
glock shrinker loop, it is possible to drop the ref count
of a glock incorrectly. It doesn't happen very often. This
patch corrects the got_ref variable, fixing the problem.

Signed-off-by: Steven Whitehouse <swhiteho@xxxxxxxxxx>

diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c
index 1afd9f2..ff49810 100644
--- a/fs/gfs2/glock.c
+++ b/fs/gfs2/glock.c
@@ -1304,6 +1304,7 @@ static int gfs2_shrink_glock_memory(int nr, gfp_t gfp_mask)
nr--;
if (queue_delayed_work(glock_workqueue, &gl->gl_work, 0) == 0)
gfs2_glock_put(gl);
+ got_ref = 0;
}
spin_lock(&lru_lock);
if (may_demote)
--
1.6.0.6



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/