
In this photo illustration, a SanDisk memory card is displayed on January 30, 2026 in San Anselmo, California. Justin Sullivan/Getty Images
The file system on virtually every USB drive and SD card on the planet just got a significant architectural upgrade. On June 20, 2026, the exFAT pull request for Linux 7.2 — submitted by maintainer Namjae Jeon — was merged into the kernel's active merge window, converting the driver to use the IOmap infrastructure that already powers Linux's most-used file systems. The practical result: faster large-file transfers on removable media, cleaner internal code paths, and — critically — admission to a class of kernel-wide storage optimizations that the old architecture could never receive.
ExFAT (Extensible File Allocation Table) is a Microsoft file system introduced in 2006 and adopted by the SD Association as the mandatory format for SDXC and SDUC cards larger than 32 GB. Because every major operating system — Windows, macOS, Linux, iOS, and Android — supports it natively, exFAT is the de facto standard for portable media: nearly every USB flash drive, SD card, and external SSD sold worldwide ships formatted with it.
Linux gained native in-kernel exFAT support with kernel 5.4 in November 2019, after Microsoft published the exFAT specification and released the associated patents to the Open Invention Network in August 2019. The improved, Samsung-derived driver maintained by Namjae Jeon arrived in kernel 5.7 in 2020. Since then, the driver has been actively maintained — it received a robustness fix in 2025 addressing a cluster-chain loop condition that could cause directory handling to stall on malformed media — but its I/O architecture remained comparatively conservative.
IOmap is the Linux kernel's modern I/O abstraction layer. Rather than letting each file system manage its own page-cache bookkeeping, IOmap centralizes that work: it maps logical file byte ranges to physical storage blocks and handles buffered I/O, direct I/O, and LLSEEK SEEK_HOLE/SEEK_DATA operations through a unified infrastructure that file systems call into instead of re-implementing themselves.
The exFAT conversion — described by Phoronix's Michael Larabel as delivering "very nice performance gains" — covers all three I/O paths: buffered reads and writes, direct I/O, and sparse-file operations. Before the conversion, exFAT maintained its own page-cache wiring using the older buffer_head mechanism — a design the kernel's own documentation describes as "shattered remnants of the old buffer cache," built around a 512-byte block paradigm that predates modern flash storage by decades.
With the IOmap port complete, exFAT no longer needs to implement its own write-begin, write-end, or direct I/O address-space operations. IOmap handles all of that centrally, eliminating duplicated code and replacing linked lists of buffer heads with per-folio bitmaps — a more efficient data structure for managing large contiguous I/O operations.
The throughput improvement from the IOmap conversion is the visible change. The architectural significance is larger: the kernel documentation explicitly states that large-folio support is available only via IOmap, and that there are no plans to port it back to the buffer_head path. Large folios let the kernel treat contiguous regions of memory as single units rather than individual pages, reducing metadata overhead and locking contention on sequential operations — exactly the workload pattern of large file transfers to and from USB and SD media.
This means file systems that remain on buffer_head are not merely missing a current optimization. They are permanently excluded from an entire class of future kernel improvements as the storage stack continues to evolve. The IOmap conversion resolves that architectural debt for exFAT before it becomes a ceiling.
File systems like ext4 and XFS have used IOmap for years. Btrfs is in the process of converting its remaining paths. With the Linux 7.2 merge, exFAT joins that tier — no longer a compatibility shim sitting outside the kernel's modern storage architecture, but a driver that will automatically inherit future IOmap-layer improvements alongside the rest of the file-system ecosystem.
The exFAT IOmap conversion is part of an active storage cycle for Linux 7.2. The merge window, which opened June 14 when Linus Torvalds released Linux 7.1, has also brought NTFS driver improvements and fixes from the same maintainer, EXT4 fast-commit rework and faster directory hashing, and broader io_uring and NVMe block-layer updates. Linux 7.2's first release candidate is targeted for June 28, with a stable release expected around late August 2026.
For developers building storage-intensive applications on Linux — or for device manufacturers whose hardware ships exFAT-formatted media — the conversion signals that the format will keep pace with the kernel's performance trajectory rather than being left behind it.
What is IOmap and why does converting exFAT to it matter for Linux users?
IOmap is the Linux kernel's modern I/O abstraction layer, used by file systems like ext4 and XFS to handle file reads, writes, and extent mapping through a shared, well-optimized infrastructure. Converting exFAT to IOmap means the driver no longer maintains its own page-cache code, gains access to performance improvements that IOmap handles centrally, and — most importantly — becomes eligible for large-folio support, which the kernel has explicitly limited to IOmap-only and will never backport to the older buffer_head architecture.
Why is exFAT used on USB drives and SD cards instead of ext4 or NTFS?
ExFAT was designed specifically for flash media: it is lightweight, supports files larger than 4 GB (unlike FAT32), and works natively on Windows, macOS, Linux, iOS, and Android without requiring additional drivers. The SD Association mandates exFAT for SDXC and SDUC cards larger than 32 GB, which is why virtually every high-capacity removable storage device ships formatted with it. Ext4 and NTFS lack the cross-platform read-write support that makes exFAT practical for removable media shared across operating systems.
Will the exFAT IOmap conversion affect my current Linux system?
Not immediately. The change is merged into Linux 7.2, whose first release candidate is targeted for June 28, 2026, with a stable release expected around late August 2026. Users running earlier kernels will not see the change until they upgrade to a distribution shipping Linux 7.2 or later. When they do, file transfers to and from exFAT-formatted USB drives and SD cards should be faster, particularly for large sequential files.
What is the difference between buffered I/O and direct I/O on Linux?
Buffered I/O is Linux's default I/O path: file data passes through the kernel's page cache, which keeps recently accessed data in memory to accelerate repeated reads and absorb write bursts before committing them to storage. Direct I/O bypasses the page cache entirely, writing or reading directly between a user-space buffer and the storage device — useful for applications like databases that manage their own caching. The exFAT IOmap conversion upgrades both paths, replacing legacy buffer_head code on the buffered path and enabling a cleaner direct I/O implementation.
