summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Sandeen <sandeen@fedoraproject.org>2009-04-11 13:29:14 +0000
committerEric Sandeen <sandeen@fedoraproject.org>2009-04-11 13:29:14 +0000
commit39346b1b74ead1f96d4fadd9376f8f5de83310aa (patch)
tree966188c7bee1c5f1bacf767b7107590ff0130579
parent474e2ca00dece5c7cb5f84e4964a14de6401ef90 (diff)
downloade2fsprogs-39346b1b74ead1f96d4fadd9376f8f5de83310aa.tar.gz
e2fsprogs-39346b1b74ead1f96d4fadd9376f8f5de83310aa.tar.xz
e2fsprogs-39346b1b74ead1f96d4fadd9376f8f5de83310aa.zip
* Sat Apr 11 2009 Eric Sandeen <sandeen@redhat.com> 1.41.4-6F-11-split
- ignore differing NEEDS_RECOVERY flag on fsck post-resize (#471925)
-rw-r--r--e2fsprogs-1.41.4-ignore-NEEDS_RECOVERY-mismatch.patch37
-rw-r--r--e2fsprogs.spec8
2 files changed, 44 insertions, 1 deletions
diff --git a/e2fsprogs-1.41.4-ignore-NEEDS_RECOVERY-mismatch.patch b/e2fsprogs-1.41.4-ignore-NEEDS_RECOVERY-mismatch.patch
new file mode 100644
index 0000000..8ef33e2
--- /dev/null
+++ b/e2fsprogs-1.41.4-ignore-NEEDS_RECOVERY-mismatch.patch
@@ -0,0 +1,37 @@
+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)
+ {
diff --git a/e2fsprogs.spec b/e2fsprogs.spec
index 6b3bccc..22312d0 100644
--- a/e2fsprogs.spec
+++ b/e2fsprogs.spec
@@ -4,7 +4,7 @@
Summary: Utilities for managing ext2, ext3, and ext4 filesystems
Name: e2fsprogs
Version: 1.41.4
-Release: 5%{?dist}
+Release: 6%{?dist}
# License based on upstream-modified COPYING file,
# which clearly states "V2" intent.
License: GPLv2
@@ -18,6 +18,7 @@ Patch2: e2fsprogs-1.40.4-sb_feature_check_ignore.patch
Patch3: e2fsprogs-1.41.4-debugfs-stat-segfault.patch
Patch4: e2fsprogs-1.41.4-libext2fs-info.patch
Patch5: e2fsprogs-1.41.4-fix-blkid-segfault.patch
+Patch6: e2fsprogs-1.41.4-ignore-NEEDS_RECOVERY-mismatch.patch
Url: http://e2fsprogs.sourceforge.net/
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
@@ -101,6 +102,8 @@ SMP systems.
%patch4 -p1 -b .info
# Fix blkid segfault in modules.dep scanning
%patch5 -p1 -b .info
+# Ignore NEEDS_RECOVERY mismatch
+%patch6 -p1 -b .recovery
%build
%configure --enable-elf-shlibs --enable-nls --disable-e2initrd-helper --enable-blkid-devmapper --enable-blkid-selinux
@@ -299,6 +302,9 @@ fi
%dir %attr(2775, uuidd, uuidd) /var/lib/libuuid
%changelog
+* Sat Apr 11 2009 Eric Sandeen <sandeen@redhat.com> 1.41.4-6
+- ignore differing NEEDS_RECOVERY flag on fsck post-resize (#471925)
+
* Thu Feb 26 2009 Eric Sandeen <sandeen@redhat.com> 1.41.4-5
- fix a couple missed descriptions; obsolete e4fsprogs