[GIT PULL] erofs updates for 6.17-rc1

From: Gao Xiang
Date: Sun Jul 27 2025 - 22:51:29 EST


Hi Linus,

Could you consider this pull request for 6.17-rc1?

In this cycle, metadata compression is now supported due to user
requests [1]. It can be useful for embedded use cases or archiving
a large number of small files.

Additionally, readdir performance has been improved by enabling
readahead (note that it was already common practice for ext3/4 non-dx
and f2fs directories). We may consider further improvements later to
align with ext4's s_inode_readahead_blks behavior for slow devices too.

The remaining commits are minor. All commits have been in -next and no
potential merge conflict is observed.

[1] https://issues.redhat.com/browse/RHEL-75783

Thanks,
Gao Xiang

The following changes since commit 89be9a83ccf1f88522317ce02f854f30d6115c41:

Linux 6.16-rc7 (2025-07-20 15:18:33 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs.git tags/erofs-for-6.17-rc1

for you to fetch changes up to df0ce6cefa453d2236381645e529a27ef2f0a573:

erofs: support to readahead dirent blocks in erofs_readdir() (2025-07-24 19:44:08 +0800)

----------------------------------------------------------------
Changes since last update:

- Add support for metadata compression;

- Enable readahead for directories to improve readdir performance;

- Minor fixes and cleanups.

----------------------------------------------------------------
Bo Liu (OpenAnolis) (2):
erofs: fix build error with CONFIG_EROFS_FS_ZIP_ACCEL=y
erofs: implement metadata compression

Chao Yu (2):
erofs: do sanity check on m->type in z_erofs_load_compact_lcluster()
erofs: support to readahead dirent blocks in erofs_readdir()

Gao Xiang (6):
erofs: get rid of {get,put}_page() for ztailpacking data
erofs: remove need_kmap in erofs_read_metabuf()
erofs: unify meta buffers in z_erofs_fill_inode()
erofs: refine erofs_iomap_begin()
erofs: remove ENOATTR definition
erofs: add on-disk definition for metadata compression

Documentation/ABI/testing/sysfs-fs-erofs | 10 ++-
fs/erofs/Kconfig | 2 +
fs/erofs/data.c | 64 ++++++++------
fs/erofs/decompressor.c | 2 +-
fs/erofs/dir.c | 17 +++-
fs/erofs/erofs_fs.h | 15 +++-
fs/erofs/fileio.c | 2 +-
fs/erofs/fscache.c | 3 +-
fs/erofs/inode.c | 21 ++---
fs/erofs/internal.h | 40 ++++++++-
fs/erofs/super.c | 23 ++++-
fs/erofs/sysfs.c | 4 +
fs/erofs/xattr.c | 56 +++++++------
fs/erofs/xattr.h | 3 -
fs/erofs/zdata.c | 20 +++--
fs/erofs/zmap.c | 140 +++++++++++++------------------
16 files changed, 255 insertions(+), 167 deletions(-)