diff options
Diffstat (limited to 'fs/gfs2/lops.c')
-rw-r--r-- | fs/gfs2/lops.c | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/fs/gfs2/lops.c b/fs/gfs2/lops.c index 7882671bfe09..e9709dabc267 100644 --- a/fs/gfs2/lops.c +++ b/fs/gfs2/lops.c | |||
@@ -396,12 +396,8 @@ static void buf_lo_add(struct gfs2_sbd *sdp, struct gfs2_log_element *le) | |||
396 | 396 | ||
397 | lock_buffer(bd->bd_bh); | 397 | lock_buffer(bd->bd_bh); |
398 | gfs2_log_lock(sdp); | 398 | gfs2_log_lock(sdp); |
399 | if (!list_empty(&bd->bd_list_tr)) | ||
400 | goto out; | ||
401 | tr = current->journal_info; | 399 | tr = current->journal_info; |
402 | tr->tr_touched = 1; | 400 | tr->tr_touched = 1; |
403 | tr->tr_num_buf++; | ||
404 | list_add(&bd->bd_list_tr, &tr->tr_list_buf); | ||
405 | if (!list_empty(&le->le_list)) | 401 | if (!list_empty(&le->le_list)) |
406 | goto out; | 402 | goto out; |
407 | set_bit(GLF_LFLUSH, &bd->bd_gl->gl_flags); | 403 | set_bit(GLF_LFLUSH, &bd->bd_gl->gl_flags); |
@@ -781,18 +777,10 @@ static void databuf_lo_add(struct gfs2_sbd *sdp, struct gfs2_log_element *le) | |||
781 | 777 | ||
782 | lock_buffer(bd->bd_bh); | 778 | lock_buffer(bd->bd_bh); |
783 | gfs2_log_lock(sdp); | 779 | gfs2_log_lock(sdp); |
784 | if (tr) { | 780 | if (tr) |
785 | if (!list_empty(&bd->bd_list_tr)) | ||
786 | goto out; | ||
787 | tr->tr_touched = 1; | 781 | tr->tr_touched = 1; |
788 | if (gfs2_is_jdata(ip)) { | ||
789 | tr->tr_num_buf++; | ||
790 | list_add(&bd->bd_list_tr, &tr->tr_list_buf); | ||
791 | } | ||
792 | } | ||
793 | if (!list_empty(&le->le_list)) | 782 | if (!list_empty(&le->le_list)) |
794 | goto out; | 783 | goto out; |
795 | |||
796 | set_bit(GLF_LFLUSH, &bd->bd_gl->gl_flags); | 784 | set_bit(GLF_LFLUSH, &bd->bd_gl->gl_flags); |
797 | set_bit(GLF_DIRTY, &bd->bd_gl->gl_flags); | 785 | set_bit(GLF_DIRTY, &bd->bd_gl->gl_flags); |
798 | if (gfs2_is_jdata(ip)) { | 786 | if (gfs2_is_jdata(ip)) { |