any comments? On Sat, May 11, 2013 at 9:12 AM, Ashish Sangwan <ashishsangwan2@xxxxxxxxx> wrote: > From: Ashish Sangwan <a.sangwan@xxxxxxxxxxx> > > We can calculate journal blocks as soon as blocksize is set. > It will help to figure out wrong journal blocks count earlier. > This will save some un-necessary initialization. > > Without patch output => > mke2fs /dev/sdc1 -J size=1048576 > mke2fs 1.42.7 (21-Jan-2013) > Filesystem label= > OS type: Linux > Block size=4096 (log=2) > Fragment size=4096 (log=2) > Stride=0 blocks, Stripe width=0 blocks > 61312 inodes, 244936 blocks > 12246 blocks (5.00%) reserved for the super user > First data block=0 > Maximum filesystem blocks=251658240 > 8 block groups > 32768 blocks per group, 32768 fragments per group > 7664 inodes per group > Superblock backups stored on blocks: > 32768, 98304, 163840, 229376 > > Allocating group tables: done > Writing inode tables: done > > The requested journal size is 268435456 blocks; it must be > between 1024 and 10240000 blocks. Aborting. > > > With patch output => > mke2fs /dev/sdc1 -J size=1048576 > mke2fs 1.42.7 (21-Jan-2013) > > The requested journal size is 268435456 blocks; it must be > between 1024 and 10240000 blocks. Aborting. > > Signed-off-by: Ashish Sangwan <a.sangwan@xxxxxxxxxxx> > Signed-off-by: Namjae Jeon <namjae.jeon@xxxxxxxxxxx> > --- > misc/mke2fs.c | 8 ++++++-- > 1 files changed, 6 insertions(+), 2 deletions(-) > > diff --git a/misc/mke2fs.c b/misc/mke2fs.c > index bbf477a..0232053 100644 > --- a/misc/mke2fs.c > +++ b/misc/mke2fs.c > @@ -2407,6 +2407,12 @@ int main (int argc, char *argv[]) > com_err(device_name, retval, _("while setting up superblock")); > exit(1); > } > + > + /* Calculate journal blocks */ > + if (!journal_device && ((journal_size) || > + (fs_param.s_feature_compat & > + EXT3_FEATURE_COMPAT_HAS_JOURNAL))) > + journal_blocks = figure_journal_size(journal_size, fs); > fs->progress_ops = &ext2fs_numeric_progress_ops; > > /* Check the user's mkfs options for metadata checksumming */ > @@ -2683,8 +2689,6 @@ int main (int argc, char *argv[]) > } else if ((journal_size) || > (fs_param.s_feature_compat & > EXT3_FEATURE_COMPAT_HAS_JOURNAL)) { > - journal_blocks = figure_journal_size(journal_size, fs); > - > if (super_only) { > printf(_("Skipping journal creation in super-only mode\n")); > fs->super->s_journal_inum = EXT2_JOURNAL_INO; > -- > 1.7.2.3 > -- 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