Per my experience, and that during the Fedora ext4 test day (https://fedoraproject.org/wiki/QA/Test_Days/2009-02-05) doing an ext3->ext4 migration doesn't enable extents on the filesystem. This would ideally be done pre-upgrade, if possible, so that the upgraded files (which should be most of them on the root) will be created in the extents format. I'm not sure if this sort of "pre-upgrade-migration" fits well in the anaconda flow... but it's what we'd need to do for this sort of migration to be worthwhile. Thanks, -Eric
Eric - what's required to enable extents? I assume it's a tune2fs call, as with the ext2->ext3 migration. http://kernelnewbies.org/Ext4 suggests: tune2fs -O extents,uninit_bg,dir_index $DEV fsck -pf $DEV Is that correct? Do we also want to enable the other listed features?
Yep, it's tune2fs, and the extent[s] option (either should work) is the critical one. dir_index should already be enabled for any recent install. uninit_bg may be helpful, depending on how full the filesystem is, but the subsequent fsck will take a while. That one is a tossup I suppose, though you'll get better fsck times after that initial fsck. I suppose we already run fsck from anaconda pre-resize(?) so there's precedent. The key here, though, is that unlike the ext2->ext3 migration, this needs to be done before the packages are upgraded, not after, to get any benefit from the switch to extent format. -Eric
This should be fixed in the next build of anaconda. Thanks for the info.