[GIT PULL] exfat update for 7.2-rc1
From: Namjae Jeon
Date: Thu Jun 18 2026 - 20:19:25 EST
Hi Linus,
This is exfat update pull request for v7.2-rc1. I add a description of
this pull request below. Please pull exfat with following ones.
Thanks!
The following changes since commit 0e0611827f3349d0a2ac121c023a6d3260dcecdb:
Merge tag 'pull-fixes' of
gitolite.kernel.org:pub/scm/linux/kernel/git/viro/vfs (2026-06-15
15:53:57 +0530)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/linkinjeon/exfat.git
tags/exfat-for-7.2-rc1
for you to fetch changes up to 3a1230e7b043c62737b05a3e9275ca83a43ad20a:
exfat: bound uniname advance in exfat_find_dir_entry() (2026-06-15
20:01:04 +0900)
----------------------------------------------------------------
Description for this pull request:
- Converts exfat buffered and direct I/O to the iomap infrastructure.
- Adds the supporting block mapping changes needed for that conversion,
including multi-cluster allocation, byte-based cluster mapping helpers.
- Supports SEEK_HOLE/SEEK_DATA and swapfile activation through iomap.
- Fix damaged upcase-table handling so a zero-sized table does not lead
to an infinite loop.
- Fix a potential use-after-free in exfat_find_dir_entry()
- Bound filename-entry advancement in exfat_find_dir_entry()
- Preserve benign secondary entries during rename and move
- Serialize truncate against in-flight direct I/O
- Simplify exfat_lookup().
- Replace unsafe arithmetic macros with static inline helpers.
----------------------------------------------------------------
Al Viro (1):
exfat: simplify exfat_lookup()
Bryam Vargas (1):
exfat: bound uniname advance in exfat_find_dir_entry()
David Timber (1):
exfat: fix handling of damaged volume in exfat_create_upcase_table()
Jan Polensky (1):
exfat: add swap_activate support
Michael Bommarito (1):
exfat: fix potential use-after-free in exfat_find_dir_entry()
Namjae Jeon (10):
exfat: replace unsafe macros with static inline functions
exfat: add balloc parameter to exfat_map_cluster() for iomap support
exfat: add exfat_file_open()
exfat: add support for multi-cluster allocation
exfat: add data_start_bytes and exfat_cluster_to_phys_bytes() helper
exfat: fix implicit declaration of brelse()
exfat: add iomap buffered I/O support
exfat: add iomap direct I/O support
exfat: add support for SEEK_HOLE and SEEK_DATA in llseek
exfat: serialize truncate against in-flight DIO
Rochan Avlur (1):
exfat: preserve benign secondary entries during rename and move
fs/exfat/Kconfig | 2 +-
fs/exfat/Makefile | 2 +-
fs/exfat/balloc.c | 2 +-
fs/exfat/dir.c | 117 +++++++++++------
fs/exfat/exfat_fs.h | 145 +++++++++++++++------
fs/exfat/fatent.c | 30 +++--
fs/exfat/file.c | 261 ++++++++++++++++++++++++++++---------
fs/exfat/inode.c | 364 ++++++++++------------------------------------------
fs/exfat/iomap.c | 271 ++++++++++++++++++++++++++++++++++++++
fs/exfat/iomap.h | 18 +++
fs/exfat/namei.c | 173 ++++++++++++++-----------
fs/exfat/nls.c | 19 ++-
fs/exfat/super.c | 5 +-
13 files changed, 878 insertions(+), 531 deletions(-)
create mode 100644 fs/exfat/iomap.c
create mode 100644 fs/exfat/iomap.h