Fundamentals 4 min read

Can File‑Based Optimization Save UFS Performance? Inside the Linux Kernel Debate

JEDEC’s new UFS File‑Based Optimization (FBO) 1.0 standard aims to improve flash storage performance by defragmenting LBA ranges tied to specific files, but a Xiaomi engineer’s patch proposal to implement it in Linux was sharply rejected by kernel veteran Christoph Hellwig, who called the idea fundamentally flawed.

21CTO
21CTO
21CTO
Can File‑Based Optimization Save UFS Performance? Inside the Linux Kernel Debate

JEDEC, the standards body for the microelectronics industry, recently released version 1.0 of the Universal Flash Storage (UFS) File‑Based Optimization (FBO) extension. The specification defines an extended UFS electrical interface and storage‑device behavior that physically defragments the logical block address (LBA) range associated with a particular file, aiming to mitigate performance degradation over time.

Host‑device dialogue diagram
Host‑device dialogue diagram

On November 2, a Xiaomi engineer submitted a set of patches to the Linux kernel claiming “better performance” by implementing UFS FBO. The patch description outlined the required host‑device dialogue:

Host informs the device of the LBA range it is interested in, which is usually associated with a specific file and can be derived from the file’s iNode and offsets. Host queries the device for the current physical fragmentation level of that file. If needed, the host can instruct the device to perform defragmentation. After successful defragmentation, the host may query the file’s new fragmentation level.

However, the patches were promptly dismissed by seasoned Linux kernel developer Christoph Hellwig, who harshly criticized the proposal, stating that “the idea is completely insane… files are a logical concept, not unique, and can change at any time (defragmentation, GC, deduplication).”

This is a completely crazy idea; a file is a logical concept, it is not unique (reflinks, snapshots), and can change at any time (defragmentation, GC, deduplication). Whoever came up with this plan must be off their rocker (originally “on crack …”), and it has nothing to do with the Linux kernel.

At present, the likelihood of the UFS FBO patches being accepted into the Linux kernel appears very slim.

Related links:

https://www.phoronix.com/news/UFS-File-Based-Optimization

https://www.jedec.org/standards-documents/docs/jesd231

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

storageLinux kernelUFSFile-Based Optimizationdefragmentation
21CTO
Written by

21CTO

21CTO (21CTO.com) offers developers community, training, and services, making it your go‑to learning and service platform.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.