diff options
author | Bob Peterson <rpeterso@redhat.com> | 2012-03-22 08:58:30 -0400 |
---|---|---|
committer | Steven Whitehouse <swhiteho@redhat.com> | 2012-03-26 09:16:56 +0100 |
commit | c1ac539ed43f273cd4d92bf7350ffd783b920184 (patch) | |
tree | 3d1b9e08d5e215da8b0be0db788fff151d91ebbf /fs/gfs2 | |
parent | e22057c8599373e5caef0bc42bdb95d2a361ab0d (diff) | |
download | linux-exynos-c1ac539ed43f273cd4d92bf7350ffd783b920184.tar.gz linux-exynos-c1ac539ed43f273cd4d92bf7350ffd783b920184.tar.bz2 linux-exynos-c1ac539ed43f273cd4d92bf7350ffd783b920184.zip |
GFS2: put glock reference in error patch of read_rindex_entry
This patch fixes the error path of function read_rindex_entry
so that it correctly gives up its glock reference in cases where
there is a race to re-read the rindex after gfs2_grow.
Signed-off-by: Bob Peterson <rpeterso@redhat.com>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs/gfs2')
-rw-r--r-- | fs/gfs2/rgrp.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/gfs2/rgrp.c b/fs/gfs2/rgrp.c index 19bde40b4864..19354a20e5b1 100644 --- a/fs/gfs2/rgrp.c +++ b/fs/gfs2/rgrp.c @@ -640,6 +640,7 @@ static int read_rindex_entry(struct gfs2_inode *ip, return 0; error = 0; /* someone else read in the rgrp; free it and ignore it */ + gfs2_glock_put(rgd->rd_gl); fail: kfree(rgd->rd_bits); |