e2fsprogs/e2fsprogs-1.41.4-ignore-NEEDS_RECOVERY-mismatch.patch
Eric Sandeen 39346b1b74 * Sat Apr 11 2009 Eric Sandeen <sandeen@redhat.com> 1.41.4-6
- ignore differing NEEDS_RECOVERY flag on fsck post-resize (#471925)
2009-04-11 13:29:14 +00:00

38 lines
1.6 KiB
Diff

This is for RH bugzilla 471925 - Complete scan of filesystems expanded online
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.
Signed-off-by: Eric Sandeen <sandeen@redhat.com>
---
Index: e2fsprogs-1.41.4/e2fsck/super.c
===================================================================
--- e2fsprogs-1.41.4.orig/e2fsck/super.c
+++ e2fsprogs-1.41.4/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
@@ -877,7 +878,8 @@ void check_super_block(e2fsck_t ctx)
#define FEATURE_COMPAT_IGNORE (EXT2_FEATURE_COMPAT_EXT_ATTR)
#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)
{