On 2/22/22 1:15 AM, Khem Raj wrote:
[Please note: This e-mail is from an EXTERNAL e-mail address]
I am seeing
CmdError('quilt --quiltrc
/mnt/b/yoe/master/build/tmp/work/x86_64-linux/e2fsprogs-native/1.46.5-r0/recipe-sysroot-native/etc/quiltrc
push', 0, 'stdout: Applying patch
0001-e2fsck-fix-last-mount-write-time-when-e2fsck-is-forc.patch
patching file e2fsck/super.c
Hunk #1 FAILED at 1038.
Hunk #2 FAILED at 1050.
2 out of 2 hunks FAILED -- rejects in file e2fsck/super.c
Patch 0001-e2fsck-fix-last-mount-write-time-when-e2fsck-is-forc.patch
can be reverse-applied
Hi,
This patch is only for hardknott branch, which has version 1.46.1.
Regards
Changqing
On Mon, Feb 21, 2022 at 12:08 AM Changqing Li
<[email protected]> wrote:
From: Changqing Li <[email protected]>
Backport a patch in 1.46.3 which fix one regression:
This is what the changelog says:
Fix e2fsck so that the if the s_interval is zero, and the last mount
or write time is in the future, it will fix invalid last mount/write
timestamps in the superblock. (This was a regression introduced in
v1.45.5.)
Signed-off-by: Changqing Li <[email protected]>
---
meta/recipes-devtools/e2fsprogs/e2fsprogs.inc | 3 +-
...mount-write-time-when-e2fsck-is-forc.patch | 66 +++++++++++++++++++
2 files changed, 68 insertions(+), 1 deletion(-)
create mode 100644
meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-e2fsck-fix-last-mount-write-time-when-e2fsck-is-forc.patch
diff --git a/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc
b/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc
index fb02b2006e..1250a9b99c 100644
--- a/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc
+++ b/meta/recipes-devtools/e2fsprogs/e2fsprogs.inc
@@ -19,7 +19,8 @@ LIC_FILES_CHKSUM =
"file://NOTICE;md5=d50be0580c0b0a7fbc7a4830bbe6c12b \
SECTION = "base"
DEPENDS = "util-linux attr autoconf-archive"
-SRC_URI = "git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git;branch=master"
+SRC_URI = "git://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git;branch=master \
+
file://0001-e2fsck-fix-last-mount-write-time-when-e2fsck-is-forc.patch"
S = "${WORKDIR}/git"
inherit autotools gettext texinfo pkgconfig multilib_header
update-alternatives ptest
diff --git
a/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-e2fsck-fix-last-mount-write-time-when-e2fsck-is-forc.patch
b/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-e2fsck-fix-last-mount-write-time-when-e2fsck-is-forc.patch
new file mode 100644
index 0000000000..d679b25b1d
--- /dev/null
+++
b/meta/recipes-devtools/e2fsprogs/e2fsprogs/0001-e2fsck-fix-last-mount-write-time-when-e2fsck-is-forc.patch
@@ -0,0 +1,66 @@
+From 2c69c94217b6db083d601d4fd62d6ab6c1628fee Mon Sep 17 00:00:00 2001
+From: Lukas Czerner <[email protected]>
+Date: Mon, 14 Jun 2021 15:27:25 +0200
+Subject: [PATCH] e2fsck: fix last mount/write time when e2fsck is forced
+
+With commit c52d930f e2fsck is no longer able to fix bad last
+mount/write time by default because it is conditioned on s_checkinterval
+not being zero, which it is by default.
+
+One place where it matters is when other e2fsprogs tools require to run
+full file system check before a certain operation. If the last mount
+time is for any reason in future, it will not allow it to run even if
+full e2fsck is ran.
+
+Fix it by checking the last mount/write time when the e2fsck is forced,
+except for the case where we know the system clock is broken.
+
+[ Reworked the conditionals so error messages claiming that the last
+ write/mount time were corrupted wouldn't be always printed when the
+ e2fsck was run with the -f option, thus causing 299 out of 372
+ regression tests to fail. -- TYT ]
+
+Fixes: c52d930f ("e2fsck: don't check for future superblock times if checkinterval
== 0")
+Reported-by: Dusty Mabe <[email protected]>
+Signed-off-by: Lukas Czerner <[email protected]>
+Signed-off-by: Theodore Ts'o <[email protected]>
+
+Upstream-Status: Backport
[https://github.com/tytso/e2fsprogs/commit/2c69c94217b6db083d601d4fd62d6ab6c1628fee]
+Signed-off-by: Changqing Li <[email protected]>
+---
+ e2fsck/super.c | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/e2fsck/super.c b/e2fsck/super.c
+index e1c3f935..31e2ffb2 100644
+--- a/e2fsck/super.c
++++ b/e2fsck/super.c
+@@ -1038,9 +1038,9 @@ void check_super_block(e2fsck_t ctx)
+ * Check to see if the superblock last mount time or last
+ * write time is in the future.
+ */
+- if (!broken_system_clock && fs->super->s_checkinterval &&
+- !(ctx->flags & E2F_FLAG_TIME_INSANE) &&
+- fs->super->s_mtime > (__u32) ctx->now) {
++ if (((ctx->options & E2F_OPT_FORCE) || fs->super->s_checkinterval) &&
++ !broken_system_clock && !(ctx->flags & E2F_FLAG_TIME_INSANE) &&
++ (fs->super->s_mtime > (__u32) ctx->now)) {
+ pctx.num = fs->super->s_mtime;
+ problem = PR_0_FUTURE_SB_LAST_MOUNT;
+ if (fs->super->s_mtime <= (__u32) ctx->now + ctx->time_fudge)
+@@ -1050,9 +1050,9 @@ void check_super_block(e2fsck_t ctx)
+ fs->flags |= EXT2_FLAG_DIRTY;
+ }
+ }
+- if (!broken_system_clock && fs->super->s_checkinterval &&
+- !(ctx->flags & E2F_FLAG_TIME_INSANE) &&
+- fs->super->s_wtime > (__u32) ctx->now) {
++ if (((ctx->options & E2F_OPT_FORCE) || fs->super->s_checkinterval) &&
++ !broken_system_clock && !(ctx->flags & E2F_FLAG_TIME_INSANE) &&
++ (fs->super->s_wtime > (__u32) ctx->now)) {
+ pctx.num = fs->super->s_wtime;
+ problem = PR_0_FUTURE_SB_LAST_WRITE;
+ if (fs->super->s_wtime <= (__u32) ctx->now + ctx->time_fudge)
+--
+2.25.1
+
--
2.25.1
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#162112):
https://lists.openembedded.org/g/openembedded-core/message/162112
Mute This Topic: https://lists.openembedded.org/mt/89289488/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-