From: Theodore Ts'o Date: Fri, 28 Dec 2012 23:26:12 +0000 (-0500) Subject: mke2fs: fix crash when parsing "-E resize=NNN" with "-O 64bit" X-Git-Tag: v1.42.7~61 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=49cdefd3312c5ac81ec5d233d62441281ad26e55;p=thirdparty%2Fe2fsprogs.git mke2fs: fix crash when parsing "-E resize=NNN" with "-O 64bit" If the 64-bit file system feature is enabled, then mke2fs would crash due to a divide-by-zero error caused by s_desc_size not being initialized yet. Reported-by: George Spelvin Signed-off-by: "Theodore Ts'o" --- diff --git a/misc/mke2fs.c b/misc/mke2fs.c index 7ec8cc2f3..0f9a299ff 100644 --- a/misc/mke2fs.c +++ b/misc/mke2fs.c @@ -1873,6 +1873,14 @@ profile_error: blocksize = EXT2_BLOCK_SIZE(&fs_param); + /* + * Initialize s_desc_size so that the parse_extended_opts() + * can correctly handle "-E resize=NNN" if the 64-bit option + * is set. + */ + if (fs_param.s_feature_incompat & EXT4_FEATURE_INCOMPAT_64BIT) + fs_param.s_desc_size = EXT2_MIN_DESC_SIZE_64BIT; + /* This check should happen beyond the last assignment to blocksize */ if (blocksize > sys_page_size) { if (!force) {