e2fsck: fix type mismatch bug in the largedir patch

Submitted by Theodore Ts'o on April 14, 2017, 8:56 p.m.

Details

Message ID 20170414205640.31710-1-tytso@mit.edu
State Accepted
Headers show

Commit Message

Theodore Ts'o April 14, 2017, 8:56 p.m.
Commit ae9efd05a986: "e2fsck: 3 level hash tree directory
optimization" introduced a bug when checking for the largedir feature.

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
---

I should have noticed the build warning sooner, but then again, so the
patch author should have as well.  :-)

 e2fsck/pass2.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Artem Blagodarenko April 14, 2017, 9:25 p.m.
Hello Theodore,

Thank you for fixing this mistake. I didn't fixed this after switched
from my ext2fs_has_feature_laregdir to
EXT4_FEATURE_INCOMPAT_FUNCS(largedir, 4, LARGEDIR).

Reviewed-by: Artem Blagodarenko <artem.blagodarenko@seagate.com>

On Fri, Apr 14, 2017 at 11:56 PM, Theodore Ts'o <tytso@mit.edu> wrote:
> Commit ae9efd05a986: "e2fsck: 3 level hash tree directory
> optimization" introduced a bug when checking for the largedir feature.
>
> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
> ---
>
> I should have noticed the build warning sooner, but then again, so the
> patch author should have as well.  :-)
>
>  e2fsck/pass2.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/e2fsck/pass2.c b/e2fsck/pass2.c
> index fc98e833..09b79c3b 100644
> --- a/e2fsck/pass2.c
> +++ b/e2fsck/pass2.c
> @@ -978,7 +978,7 @@ static int check_dir_block(ext2_filsys fs,
>          * very large and then the files are deleted. For now, all that is
>          * needed is to avoid e2fsck filling in these holes as part of
>          * feature flag. */
> -       if (db->blk == 0 && ext2fs_has_feature_largedir(fs))
> +       if (db->blk == 0 && ext2fs_has_feature_largedir(fs->super))
>                 return 0;
>
>         if (db->blk == 0 && !inline_data_size) {
> --
> 2.11.0.rc0.7.gbe5a750
>

Patch hide | download patch | download mbox

diff --git a/e2fsck/pass2.c b/e2fsck/pass2.c
index fc98e833..09b79c3b 100644
--- a/e2fsck/pass2.c
+++ b/e2fsck/pass2.c
@@ -978,7 +978,7 @@  static int check_dir_block(ext2_filsys fs,
 	 * very large and then the files are deleted. For now, all that is
 	 * needed is to avoid e2fsck filling in these holes as part of
 	 * feature flag. */
-	if (db->blk == 0 && ext2fs_has_feature_largedir(fs))
+	if (db->blk == 0 && ext2fs_has_feature_largedir(fs->super))
 		return 0;
 
 	if (db->blk == 0 && !inline_data_size) {