On Sep 16, 2009 11:24 -0500, Will Drewry wrote: > I have a two questions with an accompanying patch for clarification. > > resize2fs is uninit_bg aware, but when it is expanding an ext4 > filesystem, it will always zero the inode tables. Is it safe to mimick > mke2fs's write_inode_table(.., lazy_flag=1) and leave the new block > groups' inode tables marked INODE_UNINIT, BLOCK_UNINIT and _not_ zero > out the inode table if uninit_bg is supported? > > If it is okay, then it means offline resizing upwards can be just as > fast as mke2fs. I've attached a patch which is probably incomplete. > I'd love feedback as to the feasibility of the change and/or patch > quality. > > As a follow-on, would it be sane to add support like this for > online resizing. From a cursory investigation, it looks like > setup_new_block_groups() could be modified to not zero itables > if uninit_bg is supported, and INODE_ZEROED could be replaced > with ΒG_*_UNINIT. However, I'm not sure if that is a naive > view. I'm happy to send along a patch illustrating this change > if that'd be helpful or welcome. The question is why you would want to risk disk corruption vs. the (likely not performance critical) online resize? > Any and all feedback is appreciated -- even if it just for me > to look at the archives/link/etc. > > diff --git a/resize/resize2fs.c b/resize/resize2fs.c > index 1a5d910..9fcc3b9 100644 > --- a/resize/resize2fs.c > +++ b/resize/resize2fs.c > @@ -497,8 +497,7 @@ retry: > > fs->group_desc[i].bg_flags = 0; > if (csum_flag) > - fs->group_desc[i].bg_flags |= EXT2_BG_INODE_UNINIT | > - EXT2_BG_INODE_ZEROED; > + fs->group_desc[i].bg_flags |= EXT2_BG_INODE_UNINIT; This shouldn't be unconditional, since most users will want the safety of having zeroed inode tables. Cheers, Andreas -- Andreas Dilger Sr. Staff Engineer, Lustre Group Sun Microsystems of Canada, Inc. -- 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