On Sun, Mar 15, 2009 at 02:21:58PM -0500, Jeff Layton wrote: > Afternoon, > > > mke2fs -O journal_dev /dev/sdb1 > mke2fs -t ext3 -O ^has_journal /dev/sdba1 > tune2fs -o journal_data -j -J device=/dev/sdb1 /dev/sda1 Ah, I see what is happening. When we added some consistency checks to prevent insane filesystems from causing e2fsprogs to core dump, we accidentally broke the ability of e2fsprogs manipulate journal device files. Oops. This is a regression in e2fsprogs 1.41.4, that we'll fix in e2fsprogs 1.41.5. I've included the patch below. - Ted commit 341b52dfa8c2afc11d8410de9bd381b03e75c6af Author: Theodore Ts'o <tytso@xxxxxxx> Date: Mon Mar 16 22:16:44 2009 -0400 libext2fs: external journal devices should not cause ext2fs_open2 to fail This fixes a regression introduced in commit 79a9ab14 which caused attempts to open external journals to fail due to overly strict filesystem consistency checks. Signed-off-by: "Theodore Ts'o" <tytso@xxxxxxx> diff --git a/lib/ext2fs/openfs.c b/lib/ext2fs/openfs.c index cdfeaec..f6fe3f0 100644 --- a/lib/ext2fs/openfs.c +++ b/lib/ext2fs/openfs.c @@ -243,10 +243,6 @@ errcode_t ext2fs_open2(const char *name, const char *io_options, goto cleanup; } fs->fragsize = EXT2_FRAG_SIZE(fs->super); - if (EXT2_INODES_PER_GROUP(fs->super) == 0) { - retval = EXT2_ET_CORRUPT_SUPERBLOCK; - goto cleanup; - } fs->inode_blocks_per_group = ((EXT2_INODES_PER_GROUP(fs->super) * EXT2_INODE_SIZE(fs->super) + EXT2_BLOCK_SIZE(fs->super) - 1) / @@ -273,6 +269,11 @@ errcode_t ext2fs_open2(const char *name, const char *io_options, return 0; } + if (EXT2_INODES_PER_GROUP(fs->super) == 0) { + retval = EXT2_ET_CORRUPT_SUPERBLOCK; + goto cleanup; + } + /* * Read group descriptors */ _______________________________________________ Ext3-users mailing list Ext3-users@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/ext3-users