!119 tune2fs: do not change j_tail_sequence in journal superblock

From: @handsome_brother 
Reviewed-by: @liuzhiqiang26 
Signed-off-by: @liuzhiqiang26
This commit is contained in:
openeuler-ci-bot 2022-08-24 03:11:22 +00:00 committed by Gitee
commit 93ad3dadfc
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
2 changed files with 43 additions and 1 deletions

View File

@ -0,0 +1,38 @@
From 003125b2f00aed8f0a1d8b5bd80fcbb1e8e2f13e Mon Sep 17 00:00:00 2001
From: zhanchengbin <zhanchengbin1@huawei.com>
Date: Thu, 4 Aug 2022 18:33:39 +0800
Subject: [PATCH] tune2fs: do not change j_tail_sequence in journal superblock
The function recover_ext3_journal() in debugfs/journal.c, if the log
replay is over, the j_tail_sequence in journal superblock is not
changed to the value of the last transaction sequence. This will
cause subsequent log commitids to count from the commitid in last
time. After tune2fs -e, the log commitid is counted from the commitid
in last time, if the log ID of the current operation overlaps with
that of the last operation, this will cause logs that were previously
replayed by tune2fs to be replayed here.
Signed-off-by: zhanchengbin <zhanchengbin1@huawei.com>
Signed-off-by: Zhiqiang Liu <liuzhiqiang26@huawei.com>
Signed-off-by: liangyun <liangyun2@huawei.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
---
debugfs/journal.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/debugfs/journal.c b/debugfs/journal.c
index c16daa5..5105235 100644
--- a/debugfs/journal.c
+++ b/debugfs/journal.c
@@ -762,6 +762,8 @@ static errcode_t recover_ext3_journal(ext2_filsys fs)
mark_buffer_dirty(journal->j_sb_buffer);
}
+ journal->j_tail_sequence = journal->j_transaction_sequence;
+
errout:
journal_destroy_revoke(journal);
journal_destroy_revoke_caches();
--
1.8.3.1

View File

@ -1,6 +1,6 @@
Name: e2fsprogs
Version: 1.45.6
Release: 11
Release: 12
Summary: Second extended file system management tools
License: GPLv2 and LGPLv2 and GPLv2+
URL: http://e2fsprogs.sourceforge.net/
@ -50,6 +50,7 @@ Patch40: 0040-e2fsck-add-env-param-E2FS_UNRELIABLE_IO-to-fi.patch
Patch41: 0041-e2fsck-do-not-clean-up-file-acl-if-the-inode-is-trun.patch
Patch42: 0042-e2fsck-handle-level-is-overflow-in-ext2fs_extent_get.patch
Patch43: 0043-libext2fs-add-sanity-check-to-extent-manipulation.patch
Patch44: 0044-tune2fs-do-not-change-j_tail_sequence-in-journal-sup.patch
BuildRequires: gcc pkgconfig texinfo
BuildRequires: fuse-devel libblkid-devel libuuid-devel
@ -171,6 +172,9 @@ exit 0
%{_mandir}/man8/*
%changelog
* Mon Aug 15 2022 yanxiaodan <yanxiaodan@huawei.com> - 1.45.6-12
- tune2fs: do not change j_tail_sequence in journal superblock
* Sat May 28 2022 zhanchengbin <zhanchengbin1@huawei.com> - 1.45.6-11
- e2fsck: fix CVE-2022-1304