• Theodore Ts'o's avatar
    jbd: don't give up looking for space so easily in __log_wait_for_space · e219cca0
    Theodore Ts'o authored
    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=11937Signed-off-by: default avatar"Theodore Ts'o" <tytso@mit.edu>
    Cc: Duane Griffin <duaneg@dghda.com>
    Cc: Toshiyuki Okajima <toshi.okajima@jp.fujitsu.com>
    e219cca0
checkpoint.c 21 KB