X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=fs%2Fjbd%2Fcommit.c;h=a540c7f03da69f0f4f1dd73872bfbc2477f48267;hb=9bf4aaab3e101692164d49b7ca357651eb691cb6;hp=1c029b20923e6a93925be29f6f40ad4d85701589;hpb=5273a3df6485dc2ad6aa7ddd441b9a21970f003b;p=linux-2.6.git diff --git a/fs/jbd/commit.c b/fs/jbd/commit.c index 1c029b209..a540c7f03 100644 --- a/fs/jbd/commit.c +++ b/fs/jbd/commit.c @@ -362,7 +362,7 @@ write_out_data: */ commit_transaction->t_state = T_COMMIT; - descriptor = 0; + descriptor = NULL; bufs = 0; while (commit_transaction->t_buffers) { @@ -412,7 +412,8 @@ write_out_data: tagp = &bh->b_data[sizeof(journal_header_t)]; space_left = bh->b_size - sizeof(journal_header_t); first_tag = 1; - set_bit(BH_JWrite, &bh->b_state); + set_buffer_jwrite(bh); + set_buffer_dirty(bh); wbuf[bufs++] = bh; /* Record it so that we can wait for IO @@ -502,7 +503,7 @@ write_out_data: start_journal_io: for (i = 0; i < bufs; i++) { struct buffer_head *bh = wbuf[i]; - set_buffer_locked(bh); + lock_buffer(bh); clear_buffer_dirty(bh); set_buffer_uptodate(bh); bh->b_end_io = journal_end_buffer_io_sync; @@ -638,7 +639,8 @@ wait_for_iobuf: JBUFFER_TRACE(descriptor, "write commit block"); { struct buffer_head *bh = jh2bh(descriptor); - set_buffer_uptodate(bh); + + set_buffer_dirty(bh); sync_dirty_buffer(bh); if (unlikely(!buffer_uptodate(bh))) err = -EIO;