From a2ebaa2faa796593b24d6f05922e29742a868e9f Mon Sep 17 00:00:00 2001 From: Benjamin Marzinski Date: Fri, 1 Jun 2007 14:21:38 -0500 Subject: [PATCH] --- yaml --- r: 58564 b: refs/heads/master c: ddf4b426aababdae4cb96326d7aeb9d119f42c50 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/gfs2/log.c | 2 +- trunk/fs/gfs2/lops.c | 2 ++ trunk/fs/gfs2/ops_address.c | 2 ++ 4 files changed, 6 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 2bbe9000092b..c798b3e96566 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: afb853fb4eec380b492a3c369f837359359c28e8 +refs/heads/master: ddf4b426aababdae4cb96326d7aeb9d119f42c50 diff --git a/trunk/fs/gfs2/log.c b/trunk/fs/gfs2/log.c index 586923d24e6e..1fb846fc545e 100644 --- a/trunk/fs/gfs2/log.c +++ b/trunk/fs/gfs2/log.c @@ -566,7 +566,7 @@ void gfs2_log_flush(struct gfs2_sbd *sdp, struct gfs2_glock *gl) INIT_LIST_HEAD(&ai->ai_ail1_list); INIT_LIST_HEAD(&ai->ai_ail2_list); - gfs2_assert_withdraw(sdp, sdp->sd_log_num_buf == sdp->sd_log_commited_buf); + gfs2_assert_withdraw(sdp, sdp->sd_log_num_buf + sdp->sd_log_num_jdata == sdp->sd_log_commited_buf); gfs2_assert_withdraw(sdp, sdp->sd_log_num_revoke == sdp->sd_log_commited_revoke); diff --git a/trunk/fs/gfs2/lops.c b/trunk/fs/gfs2/lops.c index f82d84d05d23..3e971f25120d 100644 --- a/trunk/fs/gfs2/lops.c +++ b/trunk/fs/gfs2/lops.c @@ -475,6 +475,8 @@ static void databuf_lo_add(struct gfs2_sbd *sdp, struct gfs2_log_element *le) tr->tr_num_buf++; list_add(&bd->bd_list_tr, &tr->tr_list_buf); gfs2_log_unlock(sdp); + if (!list_empty(&le->le_list)) + return; gfs2_pin(sdp, bd->bd_bh); tr->tr_num_buf_new++; } else { diff --git a/trunk/fs/gfs2/ops_address.c b/trunk/fs/gfs2/ops_address.c index fb84478e1df6..ac5659521386 100644 --- a/trunk/fs/gfs2/ops_address.c +++ b/trunk/fs/gfs2/ops_address.c @@ -50,6 +50,8 @@ static void gfs2_page_add_databufs(struct gfs2_inode *ip, struct page *page, end = start + bsize; if (end <= from || start >= to) continue; + if (gfs2_is_jdata(ip)) + set_buffer_uptodate(bh); gfs2_trans_add_bh(ip->i_gl, bh, 0); } }