public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Lost JBD fix
@ 2007-07-09 18:14 Jan Kara
  2007-07-11 17:55 ` Chuck Ebbert
  0 siblings, 1 reply; 5+ messages in thread
From: Jan Kara @ 2007-07-09 18:14 UTC (permalink / raw)
  To: Andrew Morton; +Cc: Kirill Korotaev, devel, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 404 bytes --]

  Hi Andrew,

  it seems we've accidentally lost one JBD fix (probably it was my mistake
when rediffing some checkpointing changes) as Kirill has noted. A transaction
can currently be released when there are still some buffers on one of its
checkpointing lists. Attached patch should fix it (it still seems to apply
fine). Please apply it. Thanks.

								Honza
-- 
Jan Kara <jack@suse.cz>
SuSE CR Labs

[-- Attachment #2: jbd-2.6.16-rc1-2-commit_remove_trans_fix.diff --]
[-- Type: text/x-patch, Size: 837 bytes --]

We have to check that also the second checkpoint list is non-empty before
dropping the transaction.

Signed-off-by: Jan Kara <jack@suse.cz>

diff -rupX /home/jack/.kerndiffexclude linux-2.6.16-rc1/fs/jbd/commit.c linux-2.6.16-rc1-1-checkpoint-fix/fs/jbd/commit.c
--- linux-2.6.16-rc1/fs/jbd/commit.c	2006-01-15 00:20:12.000000000 +0100
+++ linux-2.6.16-rc1-1-checkpoint-fix/fs/jbd/commit.c	2006-01-17 23:35:19.000000000 +0100
@@ -829,7 +829,8 @@ restart_loop:
 	journal->j_committing_transaction = NULL;
 	spin_unlock(&journal->j_state_lock);
 
-	if (commit_transaction->t_checkpoint_list == NULL) {
+	if (commit_transaction->t_checkpoint_list == NULL &&
+	    commit_transaction->t_checkpoint_io_list == NULL) {
 		__journal_drop_transaction(journal, commit_transaction);
 	} else {
 		if (journal->j_checkpoint_transactions == NULL) {

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2007-07-13 17:01 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-07-09 18:14 Lost JBD fix Jan Kara
2007-07-11 17:55 ` Chuck Ebbert
2007-07-12  6:50   ` Jens Axboe
2007-07-12  6:56     ` Andrew Morton
2007-07-13 17:16   ` Jan Kara

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox