]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
jbd2: switch to use jbd2_journal_abort() when failed to submit the commit record
authorzhangyi (F) <yi.zhang@huawei.com>
Wed, 4 Dec 2019 12:46:11 +0000 (20:46 +0800)
committerBen Hutchings <ben@decadent.org.uk>
Fri, 22 May 2020 20:19:34 +0000 (21:19 +0100)
commit d0a186e0d3e7ac05cc77da7c157dae5aa59f95d9 upstream.

We invoke jbd2_journal_abort() to abort the journal and record errno
in the jbd2 superblock when committing journal transaction besides the
failure on submitting the commit record. But there is no need for the
case and we can also invoke jbd2_journal_abort() instead of
__jbd2_journal_abort_hard().

Fixes: 818d276ceb83a ("ext4: Add the journal checksum feature")
Signed-off-by: zhangyi (F) <yi.zhang@huawei.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Link: https://lore.kernel.org/r/20191204124614.45424-2-yi.zhang@huawei.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
fs/jbd2/commit.c

index 362e5f614450e53e2b407b988b4b70254a193ca2..943a575a8704f378880dc3fe7ded09cffab14684 100644 (file)
@@ -802,7 +802,7 @@ start_journal_io:
                err = journal_submit_commit_record(journal, commit_transaction,
                                                 &cbh, crc32_sum);
                if (err)
-                       __jbd2_journal_abort_hard(journal);
+                       jbd2_journal_abort(journal, err);
        }
 
        blk_finish_plug(&plug);
@@ -894,7 +894,7 @@ start_journal_io:
                err = journal_submit_commit_record(journal, commit_transaction,
                                                &cbh, crc32_sum);
                if (err)
-                       __jbd2_journal_abort_hard(journal);
+                       jbd2_journal_abort(journal, err);
        }
        if (cbh)
                err = journal_wait_on_commit_record(journal, cbh);