linux-sg2042/fs/jbd
Theodore Ts'o e219cca082 jbd: don't give up looking for space so easily in __log_wait_for_space
Commit be07c4ed introducd a regression because it assumed that if
there were no transactions ready to be checkpointed, that no progress
could be made on making space available in the journal, and so the
journal should be aborted.  This assumption is false; it could be the
case that simply calling cleanup_journal_tail() will recover the
necessary space, or, for small journals, the currently committing
transaction could be responsible for chewing up the required space in
the log, so we need to wait for the currently committing transaction
to finish before trying to force a checkpoint operation.

This patch fixes the bug reported by Meelis Roos at:
http://bugzilla.kernel.org/show_bug.cgi?id=11937

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Cc: Duane Griffin <duaneg@dghda.com>
Cc: Toshiyuki Okajima <toshi.okajima@jp.fujitsu.com>
2008-11-06 22:37:59 -05:00
..
Kconfig fs/Kconfig: move ext2, ext3, ext4, JBD, JBD2 out 2008-10-20 11:43:59 -07:00
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
checkpoint.c jbd: don't give up looking for space so easily in __log_wait_for_space 2008-11-06 22:37:59 -05:00
commit.c ext3: add an option to control error handling on file data 2008-10-20 08:52:37 -07:00
journal.c jbd: fix error handling for checkpoint io 2008-10-23 08:55:01 -07:00
recovery.c jbd: fix error handling for checkpoint io 2008-10-23 08:55:01 -07:00
revoke.c jbd: tidy up revoke cache initialisation and destruction 2008-07-25 10:53:32 -07:00
transaction.c fs: remove excess kernel-doc 2008-10-30 11:38:46 -07:00