diff options
author | Eric Sandeen <sandeen@redhat.com> | 2008-11-22 09:02:48 -0600 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2009-04-07 13:20:53 -0400 |
commit | d9ff474b742f700e049f336f055918060f21a543 (patch) | |
tree | 5e2ce565e8855ac138413bb84c62b699416250e2 /e2fsck | |
parent | a620baddee647faf42c49ee2e04ee3f667149d68 (diff) | |
download | e2fsprogs-d9ff474b742f700e049f336f055918060f21a543.tar.gz |
e2fsck: ignore differing NEEDS_RECOVERY flag on backup sbs
When we resize online, the primary superblock gets copied to all
the backups, and of course since we're mounted the NEEDS_RECOVERY
flag is set. A subsequent fsck will find the backups have the
NEEDS_RECOVERY flag set while the primary does not, and this
forces a full fsck pass.
I think this flag can be safely ignored in the flag comparisons.
Addresses-Red-Hat-Bugzilla: #471925
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'e2fsck')
-rw-r--r-- | e2fsck/super.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/e2fsck/super.c b/e2fsck/super.c index 24ec7a8f..2d50ad55 100644 --- a/e2fsck/super.c +++ b/e2fsck/super.c @@ -864,7 +864,8 @@ void check_super_block(e2fsck_t ctx) * try to discourage it in the future. In particular, for the newer * ext4 files, especially EXT4_FEATURE_RO_COMPAT_DIR_NLINK and * EXT3_FEATURE_INCOMPAT_EXTENTS. So some of these may go away in the - * future. + * future. EXT3_FEATURE_INCOMPAT_RECOVER may also get set when + * copying the primary superblock during online resize. * * The kernel will set EXT2_FEATURE_COMPAT_EXT_ATTR, but * unfortunately, we shouldn't ignore it since if it's not set in the @@ -873,7 +874,8 @@ void check_super_block(e2fsck_t ctx) */ #define FEATURE_RO_COMPAT_IGNORE (EXT2_FEATURE_RO_COMPAT_LARGE_FILE| \ EXT4_FEATURE_RO_COMPAT_DIR_NLINK) -#define FEATURE_INCOMPAT_IGNORE (EXT3_FEATURE_INCOMPAT_EXTENTS) +#define FEATURE_INCOMPAT_IGNORE (EXT3_FEATURE_INCOMPAT_EXTENTS| \ + EXT3_FEATURE_INCOMPAT_RECOVER) int check_backup_super_block(e2fsck_t ctx) { |