Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 772279c5 authored by Mingming Cao's avatar Mingming Cao Committed by Linus Torvalds
Browse files

jbd: need to hold j_state_lock to updates to transaction t_state to T_COMMIT



Updating the current transaction's t_state is protected by j_state_lock.  We
need to do the same when updating the t_state to T_COMMIT.

Signed-off-by: default avatarMingming Cao <cmm@us.ibm.com>
Acked-by: default avatarJan Kara <jack@ucw.cz>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent c3723ca3
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -470,7 +470,9 @@ void journal_commit_transaction(journal_t *journal)
	 * transaction!  Now comes the tricky part: we need to write out
	 * metadata.  Loop over the transaction's entire buffer list:
	 */
	spin_lock(&journal->j_state_lock);
	commit_transaction->t_state = T_COMMIT;
	spin_unlock(&journal->j_state_lock);

	J_ASSERT(commit_transaction->t_nr_buffers <=
		 commit_transaction->t_outstanding_credits);