Re: [RFC 0/13] extents and 48bit ext3

From: Jeff Garzik
Date: Thu Jun 08 2006 - 22:48:07 EST


Mingming Cao wrote:
Current ext3 filesystem is limited to 8TB(4k block size), this is
practically not enough for the increasing need of bigger storage as
disks in a few years (or even now).

To address this need, there are co-effort from RedHat, ClusterFS, IBM
and BULL to move ext3 from 32 bit filesystem to 48 bit filesystem,
expanding ext3 filesystem limit from 8TB today to 1024 PB. The 48 bit
ext3 is build on top of extent map changes for ext3, originally from
Alex Tomas. In short, the new ext3 on-disk extents format is:

One of my common complaints about massive ext3 updates such as this is the ever-growing "which ext3 filesystem am I mounting?" problem.

I really think extents and 48bit-ness should imply
cp -a fs/ext3 fs/ext4
and go from there.

IMHO the ext3 back-compat situation is already really hairy, with all the features added since the original ext3 release.

The alternative is continual bloating of ext3, and on filesystems, inodes which are progressively upgraded -- meaning any use of a prior kernel implies that you can only read a subset of your [meta]data, if the back-compat code doesn't block the mount entirely.

People (including me) still switch back and forth between ext2 and ext3 mounts of the same filesystem on occasion. I think creating an "ext4" would allow for greater developer flexibility in implementing new features and ditching old ones -- while also emphasizing to the user that switching back and forth between ext4 and ext[23] is a bad idea.

Overall, after applying extent (and 48bit) patches, I think it is wrong to keep calling it ext3. That will break some existing user assumptions, and continue to restrict developers' freedom to implement nifty new features.

Jeff



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/