New upstream release 1.46.4

Signed-off-by: Lukas Czerner <lczerner@redhat.com>
This commit is contained in:
Lukas Czerner 2021-08-23 11:16:43 +02:00
parent ec66d22469
commit 0bba44f9ab
6 changed files with 85 additions and 66 deletions

2
.gitignore vendored
View File

@ -47,3 +47,5 @@ e2fsprogs-1.41.12.tar.gz
/e2fsprogs-1.46.1.tar.xz
/e2fsprogs-1.46.2.tar.xz
/e2fsprogs-1.46.3.tar.xz
/e2fsprogs-1.46.4.tar.xz
/e2fsprogs-1.46.4.tar.sign

View File

@ -1,63 +0,0 @@
From 225e5d093b519f9dbe9fcaacd995426f0e5194f6 Mon Sep 17 00:00:00 2001
From: Theodore Ts'o <tytso@mit.edu>
Date: Wed, 28 Jul 2021 13:51:13 -0400
Subject: [PATCH] e2fsck: fix f_baddotdir failure on big-endian systems
Commit 63f44aafb1f2 ("e2fsck: fix ".." more gracefully if possible")
changed the check_dot() function to try to avoid resetting the '..'
entry when the '.' entry is too large.. But if we do that, then on
big-endian systems, we need to try byte swapping the rest of the
directory entries, or else the f_baddotdir test will fail on
big-endian systems.
Also add a check to avoid UBSAN warning when there is not enough space
at the end of the directory block for a directory entry, and so we can
potentially overflow some pointer arithmetic when trying to byte swap
the remainder of the (negative) space in the directory block.
Fixes: 63f44aafb1f2 ("e2fsck: fix ".." more gracefully if possible")
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
---
e2fsck/pass2.c | 18 +++++++++++++-----
1 file changed, 13 insertions(+), 5 deletions(-)
diff --git a/e2fsck/pass2.c b/e2fsck/pass2.c
index f00cb40e..bd974c55 100644
--- a/e2fsck/pass2.c
+++ b/e2fsck/pass2.c
@@ -458,6 +458,12 @@ static int check_dot(e2fsck_t ctx,
ext2fs_dirent_set_name_len(nextdir, 0);
ext2fs_dirent_set_file_type(nextdir,
ftype);
+#ifdef WORDS_BIGENDIAN
+ } else {
+ (void) ext2fs_dirent_swab_in2(ctx->fs,
+ (char *) nextdir,
+ ctx->fs->blocksize - 12, 0);
+#endif
}
status = 1;
}
@@ -1370,12 +1376,14 @@ skip_checksum:
hash_in_dirent);
#ifdef WORDS_BIGENDIAN
if (need_reswab) {
+ unsigned int len;
+
(void) ext2fs_get_rec_len(fs,
- dirent, &rec_len);
- ext2fs_dirent_swab_in2(fs,
- ((char *)dirent) + offset + rec_len,
- max_block_size - offset - rec_len,
- 0);
+ dirent, &len);
+ len += offset;
+ if (max_block_size > len)
+ ext2fs_dirent_swab_in2(fs,
+ ((char *)dirent) + len, max_block_size - len, 0);
}
#endif
dir_modified++;
--
2.31.1

View File

@ -0,0 +1,37 @@
From 2a484409ddd7c19b3aabe736a84fdad02dec15b1 Mon Sep 17 00:00:00 2001
From: Lukas Czerner <lczerner@redhat.com>
Date: Tue, 24 Aug 2021 11:09:35 +0200
Subject: [PATCH 2/2] tests: update expect files for f_large_dir and
f_large_dir_csum
Update expect files for f_large_dir and f_large_dir_csum tests to
include the warning about missing y2038 support with 128-byte inodes.
Fixes: a23b50cd ("mke2fs: warn about missing y2038 support when formatting fresh ext4 fs")
Signed-off-by: Lukas Czerner <lczerner@redhat.com>
---
tests/f_large_dir/expect | 1 +
tests/f_large_dir_csum/expect | 1 +
2 files changed, 2 insertions(+)
diff --git a/tests/f_large_dir/expect b/tests/f_large_dir/expect
index 028234cc..495ea85d 100644
--- a/tests/f_large_dir/expect
+++ b/tests/f_large_dir/expect
@@ -1,3 +1,4 @@
+128-byte inodes cannot handle dates beyond 2038 and are deprecated
Creating filesystem with 108341 1k blocks and 65072 inodes
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729
diff --git a/tests/f_large_dir_csum/expect b/tests/f_large_dir_csum/expect
index aa9f33f1..44770f7b 100644
--- a/tests/f_large_dir_csum/expect
+++ b/tests/f_large_dir_csum/expect
@@ -1,3 +1,4 @@
+128-byte inodes cannot handle dates beyond 2038 and are deprecated
Creating filesystem with 31002 1k blocks and 64 inodes
Superblock backups stored on blocks:
8193, 24577
--
2.31.1

View File

@ -0,0 +1,40 @@
From 46a9f9ae2760263252595ea2cc67e2dde4542842 Mon Sep 17 00:00:00 2001
From: Lukas Czerner <lczerner@redhat.com>
Date: Tue, 24 Aug 2021 11:08:31 +0200
Subject: [PATCH 1/2] tests: update expect files for f_mmp_garbage
Update expect file for f_mmp_garbage test to work correctly with the
new default 256 inode size.
Fixes: d730be5ceeba ("tests: update mke2fs.conf to create 256 byte inodes by default")
Signed-off-by: Lukas Czerner <lczerner@redhat.com>
---
tests/f_mmp_garbage/expect.1 | 2 +-
tests/f_mmp_garbage/expect.2 | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/tests/f_mmp_garbage/expect.1 b/tests/f_mmp_garbage/expect.1
index a8add101..4134eaea 100644
--- a/tests/f_mmp_garbage/expect.1
+++ b/tests/f_mmp_garbage/expect.1
@@ -5,5 +5,5 @@ Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
-test_filesys: 11/64 files (0.0% non-contiguous), 13/100 blocks
+test_filesys: 11/64 files (0.0% non-contiguous), 15/100 blocks
Exit status is 0
diff --git a/tests/f_mmp_garbage/expect.2 b/tests/f_mmp_garbage/expect.2
index 66300025..3bca182e 100644
--- a/tests/f_mmp_garbage/expect.2
+++ b/tests/f_mmp_garbage/expect.2
@@ -3,5 +3,5 @@ Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
-test_filesys: 11/64 files (0.0% non-contiguous), 13/100 blocks
+test_filesys: 11/64 files (0.0% non-contiguous), 15/100 blocks
Exit status is 0
--
2.31.1

View File

@ -1,6 +1,6 @@
Summary: Utilities for managing ext2, ext3, and ext4 file systems
Name: e2fsprogs
Version: 1.46.3
Version: 1.46.4
Release: 1%{?dist}
# License tags based on COPYING file distinctions for various components
@ -39,7 +39,8 @@ BuildRequires: make
BuildRequires: gnupg2 xz
Patch0: 0001-remove-local-PATH.patch
Patch1: 0001-e2fsck-fix-f_baddotdir-failure-on-big-endian-systems.patch
Patch1: 0001-tests-update-expect-files-for-f_mmp_garbage.patch
Patch2: 0001-tests-update-expect-files-for-f_large_dir-and-f_larg.patch
%description
The e2fsprogs package contains a number of utilities for creating,
@ -171,6 +172,7 @@ xzcat '%{SOURCE0}' | %{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}
%patch0 -p1
%patch1 -p1
%patch2 -p1
# Remove flawed tests
rm -rf tests/m_rootdir_acl

View File

@ -1 +1,2 @@
SHA512 (e2fsprogs-1.46.3.tar.xz) = 27da6e38d3463e7a283dacfb88a3210dd6d8c63f4d990db879f63bdf503aaa5c447ef0ccc566b71526c12a8ab0a7a6529014b1010be300ad56a6ad5ce9066196
SHA512 (e2fsprogs-1.46.4.tar.xz) = 7d9cfdf00ed58e66049585e8382fe4977088956421a0fb8155900c69afd8857309ad2b9301b3f74c9c0afa7287a0ddba2fd1538fcf57858b37a9ab712390016d
SHA512 (e2fsprogs-1.46.4.tar.sign) = 3a2358128dd017cc98fae74253ded9d78aec568bf7d8506118c9eb52e19ad6f4c559c2381fae3d121810eb78e684a09d44c4f8882fc41d0e90c9f4918b7cc65d