From: Zhihao Cheng Date: Fri, 21 Nov 2025 09:06:50 +0000 (+0800) Subject: ext4: support large block size in __ext4_block_zero_page_range() X-Git-Url: https://gentwo.org/gitweb/?a=commitdiff_plain;h=c00a6292d0616c304cb712d823370f1a82f899b2;p=linux%2F.git ext4: support large block size in __ext4_block_zero_page_range() Use the EXT4_PG_TO_LBLK() macro to convert folio indexes to blocks to avoid negative left shifts after supporting blocksize greater than PAGE_SIZE. Signed-off-by: Zhihao Cheng Signed-off-by: Baokun Li Reviewed-by: Zhang Yi Reviewed-by: Jan Kara Reviewed-by: Ojaswin Mujoo Message-ID: <20251121090654.631996-21-libaokun@huaweicloud.com> Signed-off-by: Theodore Ts'o --- diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index 8cf33a58d1a6..3b6f66463add 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c @@ -4076,7 +4076,7 @@ static int __ext4_block_zero_page_range(handle_t *handle, blocksize = inode->i_sb->s_blocksize; - iblock = folio->index << (PAGE_SHIFT - inode->i_sb->s_blocksize_bits); + iblock = EXT4_PG_TO_LBLK(inode, folio->index); bh = folio_buffers(folio); if (!bh)