From: Theodore Ts'o Date: Wed, 13 Nov 2002 12:00:16 +0000 (-0500) Subject: Update to deal with the fact that the INDEX_FL code in the ext2 2.4 X-Git-Tag: E2FSPROGS-1_33-WIP-0306~35 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=54779c66e0720896573142debfd89cffaac57e3e;p=thirdparty%2Fe2fsprogs.git Update to deal with the fact that the INDEX_FL code in the ext2 2.4 code accidentally had the INDEX_FL backwards compatibility code removed. E2fsck will now fix HTREE corruptions in preen mode, and mke2fs will not create filesystems with the dir_index flag set by default. (The user has to specifically request it.) --- diff --git a/e2fsck/ChangeLog b/e2fsck/ChangeLog index 954552fcd..83a7b499c 100644 --- a/e2fsck/ChangeLog +++ b/e2fsck/ChangeLog @@ -1,3 +1,9 @@ +2002-11-12 Theodore Ts'o + + * problem.c: Make HTREE problems PR_PREEN_OK, so that we don't + abort an e2fsck after the filesystem has been mounted + using the 2.4 ext2 codebase. + 2002-11-09 Theodore Ts'o * Release of E2fsprogs 1.32 diff --git a/e2fsck/problem.c b/e2fsck/problem.c index 51879e693..dfd12e802 100644 --- a/e2fsck/problem.c +++ b/e2fsck/problem.c @@ -671,32 +671,32 @@ static const struct e2fsck_problem problem_table[] = { /* INDEX_FL flag set on a non-HTREE filesystem */ { PR_1_HTREE_SET, N_("@i %i has INDEX_FL flag set on @f without htree support.\n"), - PROMPT_CLEAR_HTREE, 0 }, + PROMPT_CLEAR_HTREE, PR_PREEN_OK }, /* INDEX_FL flag set on a non-directory */ { PR_1_HTREE_NODIR, N_("@i %i has INDEX_FL flag set but is not a @d.\n"), - PROMPT_CLEAR_HTREE, 0 }, + PROMPT_CLEAR_HTREE, PR_PREEN_OK }, /* Invalid root node in HTREE directory */ { PR_1_HTREE_BADROOT, N_("@h %i has an invalid root node.\n"), - PROMPT_CLEAR_HTREE, 0 }, + PROMPT_CLEAR_HTREE, PR_PREEN_OK }, /* Unsupported hash version in HTREE directory */ { PR_1_HTREE_HASHV, N_("@h %i has an unsupported hash version (%N)\n"), - PROMPT_CLEAR_HTREE, 0 }, + PROMPT_CLEAR_HTREE, PR_PREEN_OK }, /* Incompatible flag in HTREE root node */ { PR_1_HTREE_INCOMPAT, N_("@h %i uses an incompatible htree root node flag.\n"), - PROMPT_CLEAR_HTREE, 0 }, + PROMPT_CLEAR_HTREE, PR_PREEN_OK }, /* HTREE too deep */ { PR_1_HTREE_DEPTH, N_("@h %i has a tree depth (%N) which is too big\n"), - PROMPT_CLEAR_HTREE, 0 }, + PROMPT_CLEAR_HTREE, PR_PREEN_OK0 }, /* Pass 1b errors */ @@ -1065,22 +1065,22 @@ static const struct e2fsck_problem problem_table[] = { /* Invalid HTREE root node */ { PR_2_HTREE_BAD_ROOT, N_("@p @h %d: root node is invalid\n"), - PROMPT_CLEAR_HTREE, 0 }, + PROMPT_CLEAR_HTREE, PR_PREEN_OK }, /* Invalid HTREE limit */ { PR_2_HTREE_BAD_LIMIT, N_("@p @h %d: node (%B) has bad limit (%N)\n"), - PROMPT_CLEAR_HTREE, 0 }, + PROMPT_CLEAR_HTREE, PR_PREEN_OK }, /* Invalid HTREE count */ { PR_2_HTREE_BAD_COUNT, N_("@p @h %d: node (%B) has bad count (%N)\n"), - PROMPT_CLEAR_HTREE, 0 }, + PROMPT_CLEAR_HTREE, PR_PREEN_OK }, /* HTREE interior node has out-of-order hashes in table */ { PR_2_HTREE_HASH_ORDER, N_("@p @h %d: node (%B) has an unordered hash table\n"), - PROMPT_CLEAR_HTREE, 0 }, + PROMPT_CLEAR_HTREE, PR_PREEN_OK }, /* Node in HTREE directory has bad depth */ { PR_2_HTREE_BAD_DEPTH, diff --git a/misc/ChangeLog b/misc/ChangeLog index 635a8c4ee..e5e4fc122 100644 --- a/misc/ChangeLog +++ b/misc/ChangeLog @@ -1,3 +1,10 @@ +2002-11-12 Theodore Ts'o + + * mke2fs.c (PRS): Don't enable the dir_index feature by default; + the ext2 code on 2.4 kernels (but not 2.2 kernels, and not + the 2.4 ext3 code) accidentally had the backwards + compatibility support for dir_indexing removed. + 2002-11-09 Theodore Ts'o * Release of E2fsprogs 1.32 diff --git a/misc/mke2fs.c b/misc/mke2fs.c index 0371c37f4..d03d80a9b 100644 --- a/misc/mke2fs.c +++ b/misc/mke2fs.c @@ -843,7 +843,9 @@ static void PRS(int argc, char *argv[]) param.s_rev_level = 1; /* Create revision 1 filesystems now */ param.s_feature_incompat |= EXT2_FEATURE_INCOMPAT_FILETYPE; param.s_feature_ro_compat |= EXT2_FEATURE_RO_COMPAT_SPARSE_SUPER; +#if 0 param.s_feature_compat |= EXT2_FEATURE_COMPAT_DIR_INDEX; +#endif #ifdef __linux__ if (uname(&ut)) {