• Theodore Ts'o's avatar
    jbd2: add debugging information to jbd2_journal_dirty_metadata() · 9ea7a0df
    Theodore Ts'o authored
    Add debugging information in case jbd2_journal_dirty_metadata() is
    called with a buffer_head which didn't have
    jbd2_journal_get_write_access() called on it, or if the journal_head
    has the wrong transaction in it.  In addition, return an error code.
    This won't change anything for ocfs2, which will BUG_ON() the non-zero
    exit code.
    
    For ext4, the caller of this function is ext4_handle_dirty_metadata(),
    and on seeing a non-zero return code, will call __ext4_journal_stop(),
    which will print the function and line number of the (buggy) calling
    function and abort the journal.  This will allow us to recover instead
    of bug halting, which is better from a robustness and reliability
    point of view.
    Signed-off-by: default avatar"Theodore Ts'o" <tytso@mit.edu>
    9ea7a0df
ext4_jbd2.c 3.95 KB