On Mon, Aug 13, 2007 at 11:33:03PM -0500, Jose R. Santos wrote: > From: Jose R. Santos <jrs@xxxxxxxxxx> > > Relax group descriptor checking. This patch should really be before patch #2 in the series (add the ability to handle the new feature before adding the ability to add in mke2fs). (Actually, I would have split up #2 into one patch which added the libe2p handling for the feature, then added the change to e2fsck, and then added the mke2fs changes, but that's just me quibbling.) > @@ -578,8 +580,16 @@ void check_super_block(e2fsck_t ctx) > for (i = 0, gd=fs->group_desc; i < fs->group_desc_count; i++, gd++) { > pctx.group = i; > > - first_block = ext2fs_group_first_block(fs, i); > - last_block = ext2fs_group_last_block(fs, i); > + if (EXT2_HAS_INCOMPAT_FEATURE (fs->super, > + EXT4_FEATURE_INCOMPAT_FLEX_BG)) { > + meta_bg_size = (fs->blocksize / sizeof (struct ext2_group_desc)); > + start_group = (i / meta_bg_size) * meta_bg_size; > + first_block = ext2fs_group_first_block(fs, start_group); > + last_block = ext2fs_group_first_block(fs, start_group + meta_bg_size); This patch requires that the metadata be in located in the metablock group descriptor, instead of anywhere in the filesystem, which is what we ultimately ended up checking into the kernel. Being more flexible is good (even if that's not the layout we use by default). I'll fix this up using git rebase --interactive and republish the patch in the next branch. - Ted - To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html