diff options
Diffstat (limited to 'fs/gfs2/meta_io.c')
-rw-r--r-- | fs/gfs2/meta_io.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/gfs2/meta_io.c b/fs/gfs2/meta_io.c index 6c1e5d1c404a..3a56c8d94de0 100644 --- a/fs/gfs2/meta_io.c +++ b/fs/gfs2/meta_io.c | |||
@@ -213,8 +213,10 @@ int gfs2_meta_read(struct gfs2_glock *gl, u64 blkno, int flags, | |||
213 | struct gfs2_sbd *sdp = gl->gl_sbd; | 213 | struct gfs2_sbd *sdp = gl->gl_sbd; |
214 | struct buffer_head *bh; | 214 | struct buffer_head *bh; |
215 | 215 | ||
216 | if (unlikely(test_bit(SDF_SHUTDOWN, &sdp->sd_flags))) | 216 | if (unlikely(test_bit(SDF_SHUTDOWN, &sdp->sd_flags))) { |
217 | *bhp = NULL; | ||
217 | return -EIO; | 218 | return -EIO; |
219 | } | ||
218 | 220 | ||
219 | *bhp = bh = gfs2_getbuf(gl, blkno, CREATE); | 221 | *bhp = bh = gfs2_getbuf(gl, blkno, CREATE); |
220 | 222 | ||
@@ -235,6 +237,7 @@ int gfs2_meta_read(struct gfs2_glock *gl, u64 blkno, int flags, | |||
235 | if (tr && tr->tr_touched) | 237 | if (tr && tr->tr_touched) |
236 | gfs2_io_error_bh(sdp, bh); | 238 | gfs2_io_error_bh(sdp, bh); |
237 | brelse(bh); | 239 | brelse(bh); |
240 | *bhp = NULL; | ||
238 | return -EIO; | 241 | return -EIO; |
239 | } | 242 | } |
240 | 243 | ||