It seems that if we have the test_filesystem flag set on an ext3
filesystem(!) on a system which provides ext4, blkid gets confused.
According to the current logic:
* It's not an ext4dev filesystem, because the system provides ext4.
* It's not an ext4 filesystem, because it has no ext4 features.
* It's not an ext3 filesystem, because the test flag is set.
In the end, it's nothing.
blkid should return *something* that is mountable... I'm inclined to
think that ext3 should be the right answer, if no ext4-specific features
are set.
This would mean just dropping the EXT2_FLAGS_TEST_FILESYS test in
probe_ext3(), because ext4 & ext4dev probes have come first already.
Signed-off-by: Eric Sandeen <[email protected]>
---
Index: e2fsprogs/lib/blkid/probe.c
===================================================================
--- e2fsprogs.orig/lib/blkid/probe.c
+++ e2fsprogs/lib/blkid/probe.c
@@ -353,10 +353,6 @@ static int probe_ext3(struct blkid_probe
struct ext2_super_block *es;
es = (struct ext2_super_block *)buf;
- /* Distinguish from ext4dev */
- if (blkid_le32(es->s_flags) & EXT2_FLAGS_TEST_FILESYS)
- return -BLKID_ERR_PARAM;
On Tue, Oct 14, 2008 at 12:27:15PM -0500, Eric Sandeen wrote:
> It seems that if we have the test_filesystem flag set on an ext3
> filesystem(!) on a system which provides ext4, blkid gets confused.
Thanks, applied.
- Ted