[GIT PULL] ext4 updates for 6.18-rc1

From: Theodore Ts'o

Date: Tue Sep 30 2025 - 22:54:16 EST


The following changes since commit b320789d6883cc00ac78ce83bccbfe7ed58afcf0:

Linux 6.17-rc4 (2025-08-31 15:33:07 -0700)

are available in the Git repository at:

https://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4.git tags/ext4_for_linus-6.18-rc1

for you to fetch changes up to acf943e9768ec9d9be80982ca0ebc4bfd6b7631e:

ext4: fix checks for orphan inodes (2025-09-26 08:36:08 -0400)

----------------------------------------------------------------
New ext4 features:

* Add support so tune2fs can modify/update the superblock using an
ioctl, without needing write access to the block device.
* Add support for 32-bit reserved uid's and gid's.

Bug fixes:

* Fix potential warnings and other failures caused by corrupted / fuzzed
file systems.
* Fail unaligned direct I/O write with EINVAL instead of silently
falling back to buffered I/O
* Correectly handle fsmap queries for metadata mappings
* Avoid journal stalls caused by writeback throttling
* Add some missing GFP_NOFAIL flags to avoid potential deadlocks
under extremem memory pressure

Cleanups:

* Remove obsolete EXT3 Kconfigs

----------------------------------------------------------------
Ahmet Eray Karadag (1):
ext4: guard against EA inode refcount underflow in xattr update

Baokun Li (2):
ext4: add ext4_sb_bread_nofail() helper function for ext4_free_branches()
ext4: fix potential null deref in ext4_mb_init()

Deepanshu Kartikey (1):
ext4: validate ea_ino and size in check_xattrs

Jan Kara (3):
ext4: fail unaligned direct IO write with EINVAL
ext4: verify orphan file size is not too big
ext4: fix checks for orphan inodes

Julian Sun (2):
jbd2: increase IO priority of checkpoint
ext4: increase IO priority of fastcommit

Lukas Bulwahn (1):
ext4: remove obsolete EXT3 config options

Ojaswin Mujoo (1):
ext4: correctly handle queries for metadata mappings

Theodore Ts'o (3):
ext4: avoid potential buffer over-read in parse_apply_sb_mount_options()
ext4: add support for 32-bit default reserved uid and gid values
ext4: implemet new ioctls to set and get superblock parameters

Xichao Zhao (1):
ext4: replace min/max nesting with clamp()

Yongjian Sun (1):
ext4: increase i_disksize to offset + len in ext4_update_disksize_before_punch()

Zhang Yi (1):
ext4: fix an off-by-one issue during moving extents

chuguangqing (1):
fs: ext4: change GFP_KERNEL to GFP_NOFS to avoid deadlock

fs/ext4/Kconfig | 27 -------
fs/ext4/ext4.h | 28 ++++++-
fs/ext4/fast_commit.c | 2 +-
fs/ext4/file.c | 2 +-
fs/ext4/fsmap.c | 14 ++--
fs/ext4/indirect.c | 2 +-
fs/ext4/inode.c | 47 +++---------
fs/ext4/ioctl.c | 312 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
fs/ext4/mballoc.c | 10 +++
fs/ext4/mmp.c | 6 +-
fs/ext4/move_extent.c | 2 +-
fs/ext4/orphan.c | 19 +++--
fs/ext4/super.c | 38 +++++-----
fs/ext4/xattr.c | 21 ++++--
fs/jbd2/checkpoint.c | 2 +-
include/uapi/linux/ext4.h | 53 +++++++++++++
16 files changed, 467 insertions(+), 118 deletions(-)