diff options
author | 2024-09-25 21:47:39 +0200 | |
---|---|---|
committer | 2024-10-30 17:42:44 -0400 | |
commit | d431a2cd28e8b7a91474d496e9226ef06a31c6eb (patch) | |
tree | 33835699b3c0b2b02bd9366875fa319b9725c091 | |
parent | Linux 6.12-rc4 (diff) | |
download | wireguard-linux-d431a2cd28e8b7a91474d496e9226ef06a31c6eb.tar.xz wireguard-linux-d431a2cd28e8b7a91474d496e9226ef06a31c6eb.zip |
ext4: Call ext4_journal_stop(handle) only once in ext4_dio_write_iter()
An ext4_journal_stop(handle) call was immediately used after a return value
check for a ext4_orphan_add() call in this function implementation.
Thus call such a function only once instead directly before the check.
This issue was transformed by using the Coccinelle software.
Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Reviewed-by: Zhang Yi <yi.zhang@huawei.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Link: https://patch.msgid.link/cf895072-43cf-412c-bced-8268498ad13e@web.de
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
-rw-r--r-- | fs/ext4/file.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/fs/ext4/file.c b/fs/ext4/file.c index f14aed14b9cf..23005f1345a8 100644 --- a/fs/ext4/file.c +++ b/fs/ext4/file.c @@ -564,12 +564,9 @@ static ssize_t ext4_dio_write_iter(struct kiocb *iocb, struct iov_iter *from) } ret = ext4_orphan_add(handle, inode); - if (ret) { - ext4_journal_stop(handle); - goto out; - } - ext4_journal_stop(handle); + if (ret) + goto out; } if (ilock_shared && !unwritten) |