]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
ext4: reserved credits for one extent during the folio writeback
authorZhang Yi <yi.zhang@huawei.com>
Mon, 7 Jul 2025 14:08:11 +0000 (22:08 +0800)
committerTheodore Ts'o <tytso@mit.edu>
Mon, 14 Jul 2025 03:41:52 +0000 (23:41 -0400)
commitbbbf150f3f85619569ac19dc6458cca7c492e715
tree7298425a9671f11a88f552ed883bb47a9c5dfcb7
parent95ad8ee45cdbc321c135a2db895d48b374ef0f87
ext4: reserved credits for one extent during the folio writeback

After ext4 supports large folios, reserving journal credits for one
maximum-ordered folio based on the worst case cenario during the
writeback process can easily exceed the maximum transaction credits.
Additionally, reserving journal credits for one page is also no
longer appropriate.

Currently, the folio writeback process can either extend the journal
credits or initiate a new transaction if the currently reserved journal
credits are insufficient. Therefore, it can be modified to reserve
credits for only one extent at the outset. In most cases involving
continuous mapping, these credits are generally adequate, and we may
only need to perform some basic credit expansion. However, in extreme
cases where the block size and folio size differ significantly, or when
the folios are sufficiently discontinuous, it may be necessary to
restart a new transaction and resubmit the folios.

Suggested-by: Jan Kara <jack@suse.cz>
Signed-off-by: Zhang Yi <yi.zhang@huawei.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Link: https://patch.msgid.link/20250707140814.542883-9-yi.zhang@huaweicloud.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
fs/ext4/inode.c