Whamcloud - gitweb
tune2fs: abort clearing the dir_index when the fs needs to be fsck'ed first
authorTheodore Ts'o <tytso@mit.edu>
Thu, 21 Jan 2021 22:08:40 +0000 (17:08 -0500)
committerTheodore Ts'o <tytso@mit.edu>
Thu, 21 Jan 2021 22:08:40 +0000 (17:08 -0500)
We were not checking the return value of check_fsck_needed() when
checking to clear the dir_index feature.  As a result, tune2fs would
print that the file system needed to be checked first, but then go
ahead and clear the dir_index flag.

Addresses-Coverity-Bug: 1467671
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
misc/tune2fs.c

index 7c9baf1..f3bfb04 100644 (file)
@@ -1238,9 +1238,10 @@ mmp_error:
 
        if (FEATURE_OFF(E2P_FEATURE_COMPAT, EXT2_FEATURE_COMPAT_DIR_INDEX) &&
            ext2fs_has_feature_metadata_csum(sb)) {
-               check_fsck_needed(fs,
+               if (check_fsck_needed(fs,
                        _("Disabling directory index on filesystem with "
-                         "checksums could take some time."));
+                         "checksums could take some time.")))
+                       return 1;
                if (mount_flags & EXT2_MF_MOUNTED) {
                        fputs(_("Cannot disable dir_index on a mounted "
                                "filesystem!\n"), stderr);