Features/Ext4DefaultFs

= Feature Name = Ext4DefaultFs

Summary
Make ext4 the default files system for anaconda-driven installs (replacing ext3).

Owner

 * Name: Eric Sandeen


 * email: sandeen@redhat.com

Current status

 * Targeted release:  Fedora 11
 * Last updated: 2009-04-17
 * Percentage of completion: 100%

Detailed Description
The ext4 filesystem has matured to the point where there is good e2fsprogs support, and upstream has shifted from "ext4dev" to "ext4." To broaden exposure, and make new ext4 features & performance more widely available, I propose that we make ext4 the default filesystem for new installs.

Benefit to Fedora
The ext4 filesystem has more features and generally better performance than ext3, which is showing its age in the Linux filesystem world. Features include:


 * Delayed allocation & mballoc allocator for better on-disk allocation
 * Sub-second timestamps
 * Space preallocation
 * Journal checksumming
 * Large (>2T) file support
 * Large (>16T) filesystem support (pending - post F11)
 * Defragmentation support (really pending - post F11)

I do not propose offering migration from ext3 by default, at this point, due to bugs in that process, and extra risk involved. Perhaps an "ext4migrate" boot option could be used to expose it for further testing.

Scope
This is mainly a simple (should be...) change for Anaconda's default choice. Anaconda already has ext4 support; it's a question of making it default now.

Bugs are sure to be found and exposed; these will require kernel & userspace fixes.

How To Test
As far as "Default install on ext4" is concerned, this is the same testing as is currently done for ext3 installs.

User Experience
User should notice generally better performance, and benefit from things like persistent preallocation when using updated torrent clients, etc.

Dependencies
Most is already in place; to some degree we depend on upstream fixing bugs and/or accepting bugfixes. But we have kernel+userspace today which supports ext4.


 * We should update grub to work on ext4; an untested, unintegrated patch exists. We could live with ext3 boot, but that would be less tidy.
 * NOTE - grub was not completed, but this is a minor issue overall.
 * livecd-tools will need some minor tweaks for ext4 - done.

Contingency Plan
We can revert to ext3 as default if things go poorly.

Documentation

 * http://ext4.wiki.kernel.org
 * http://kernelnewbies.org/Ext4

Release Notes

 * DRAFT: Ext4 is now the default filesystem for anaconda driven installs.

Comments and Discussion

 * See Talk:Features/Ext4DefaultFs