Go through all b_next_transaction instances, implement locking rules. 25-akpm/fs/jbd/transaction.c | 5 ++++- fs/jbd/commit.c | 0 2 files changed, 4 insertions(+), 1 deletion(-) diff -puN fs/jbd/commit.c~jbd-080-b_next_transaction-locking fs/jbd/commit.c diff -puN fs/jbd/transaction.c~jbd-080-b_next_transaction-locking fs/jbd/transaction.c --- 25/fs/jbd/transaction.c~jbd-080-b_next_transaction-locking Thu Jun 5 15:14:20 2003 +++ 25-akpm/fs/jbd/transaction.c Thu Jun 5 15:14:20 2003 @@ -1966,8 +1966,11 @@ void journal_file_buffer(struct journal_ * dropping it from its current transaction entirely. If the buffer has * already started to be used by a subsequent transaction, refile the * buffer on that transaction's metadata list. + * + * Called under journal_datalist_lock + * + * Called under jbd_lock_bh_state(jh2bh(jh)) */ - void __journal_refile_buffer(struct journal_head *jh) { int was_dirty; _