Messages in this thread | ![/](/images/icornerl.gif) | | Date | Mon, 11 Aug 2003 12:23:07 -0400 | From | Jeff Garzik <> | Subject | Re: [RFC] file extents for EXT3 |
| |
Andreas Dilger wrote: > Ext2/3 uses feature flags instead of version numbers to indicate such > changes. Version numbers are a poor way of indicating whether a change > is compatible or not compared to feature flags. For example, if you bump > the minor number to indicate a "compatible" change it means that any > code that pretends to support version x.y features also needs to support > all features <= y and all features <= x.
What I'm talking about is more high level than that, and probably touches on "marketing" aspects a bit:
The net effect of slowly sliding features into ext2/3 via feature flags creates the poor situation we have today: your filesystem, and your kernel, may or may not support the featureset you're looking for. Sure, slowly sliding features into existing filesystems can be made to work with compatibility flags and careful thought.
However, I argue that there should be an ext2/3 filesystem feature freeze. And in this regard I am talking about _software_ versions, not filesystem formats. ext4 should be where the bulk of the new work goes. Please -- leave ext3 alone! It's still being stabilized.
Of course, the other alternative is to rename ext3 to "linuxfs", add a "no journal at all" mode, and remove ext2. But I prefer my "ext4" solution :)
Anyway, I am hoping that situation will be fixed, not propagated via feature flags until the end of time as a Good Thing(tm). It is _not_ smart to create features like ACLs or htrees, and then use those features under different versions of kernels. That strategy guarantees your metadata will get out of sync with other metadata, in the name of backward compatibility.
Jeff
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| ![\](/images/icornerr.gif) |