diff options
Diffstat (limited to 'fs/gfs2/lops.c')
-rw-r--r-- | fs/gfs2/lops.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/fs/gfs2/lops.c b/fs/gfs2/lops.c index 852c1be1dd3..8ff95a2d54e 100644 --- a/fs/gfs2/lops.c +++ b/fs/gfs2/lops.c | |||
@@ -401,9 +401,14 @@ static void buf_lo_add(struct gfs2_sbd *sdp, struct gfs2_bufdata *bd) | |||
401 | goto out; | 401 | goto out; |
402 | set_bit(GLF_LFLUSH, &bd->bd_gl->gl_flags); | 402 | set_bit(GLF_LFLUSH, &bd->bd_gl->gl_flags); |
403 | set_bit(GLF_DIRTY, &bd->bd_gl->gl_flags); | 403 | set_bit(GLF_DIRTY, &bd->bd_gl->gl_flags); |
404 | gfs2_meta_check(sdp, bd->bd_bh); | ||
405 | gfs2_pin(sdp, bd->bd_bh); | ||
406 | mh = (struct gfs2_meta_header *)bd->bd_bh->b_data; | 404 | mh = (struct gfs2_meta_header *)bd->bd_bh->b_data; |
405 | if (unlikely(mh->mh_magic != cpu_to_be32(GFS2_MAGIC))) { | ||
406 | printk(KERN_ERR | ||
407 | "Attempting to add uninitialised block to journal (inplace block=%lld)\n", | ||
408 | (unsigned long long)bd->bd_bh->b_blocknr); | ||
409 | BUG(); | ||
410 | } | ||
411 | gfs2_pin(sdp, bd->bd_bh); | ||
407 | mh->__pad0 = cpu_to_be64(0); | 412 | mh->__pad0 = cpu_to_be64(0); |
408 | mh->mh_jid = cpu_to_be32(sdp->sd_jdesc->jd_jid); | 413 | mh->mh_jid = cpu_to_be32(sdp->sd_jdesc->jd_jid); |
409 | sdp->sd_log_num_buf++; | 414 | sdp->sd_log_num_buf++; |