Kernel header vs libext2fs headers

Carlo Wood carlo at
Sat Mar 15 04:17:02 UTC 2008

On Sat, Mar 15, 2008 at 11:26:37AM +0800, Andreas Dilger wrote:
> the fs/ext3 code are EXT3_*, and similarly, all of the definitions in
> fs/ext2 are EXT2_*, and in fs/ext4 they are EXT4_*.  This avoids name
> conflicts.
> Conversely (though I don't necessarily agree with this) the definitions
> in libext2fs declare these flags depending on what "version" of extN
> the feature was first added (EXT2_*, EXT3_*, EXT4_*).  That makes it
> easier to see what kernel is using which feature, but isn't always 100%
> accurate or correct.

But if EXT4_ORPHAN_FS is defined, then you imply that ext4 is the
first version of ext that has implemented it; however, the ext3 kernel
header defines it, so you should use EXT3_ORPHAN_FS in e2fsprogs.
Or am I missing something? If ORPHAN_FS was truely new since ext4,
shouldn't it be missing in /usr/include/linux/ext3_fs.h ?

Carlo Wood <carlo at>

More information about the Ext3-users mailing list