[PATCH 0/3] Optimize __ext4_block_zero_page_range() for unwritten buffers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



As per discussion with Jan here [1], this patchset intends to exit early
from __ext4_block_zero_page_range() incase the block we are about to
zero (partially) is unwritten and unmapped, since such a block doesn't
require zeroing.

Further, also make sure that calls to ext4_zero_partial_blocks()
truncate the page cache completely beforehand, so that they don't rely
on ext4_zero_partial_block() -> __ext4_block_zero_page_range() to zero
out non block aligned edges of pagecache.

Reviews and comments are appreciated!

Regards,
ojaswin

[1]
https://lore.kernel.org/linux-ext4/20230914141920.lw2nlpzhcxwuz2y6@quack3/

Ojaswin Mujoo (3):
  ext4: treat end of range as exclusive in ext4_zero_range()
  ext4: truncate complete range in pagecache before calling
    ext4_zero_partial_blocks()
  ext4: Skip unwritten buffers in __ext4_block_zero_page_range()

 fs/ext4/extents.c | 20 +++++++++++++-------
 fs/ext4/inode.c   |  7 +++++--
 2 files changed, 18 insertions(+), 9 deletions(-)

-- 
2.39.3




[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux