Update release notes, etc., for the 1.47.1-rc1 release

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
This commit is contained in:
Theodore Ts'o 2024-04-27 00:38:54 -04:00
parent d43fb24ca0
commit 8419d80d8c
7 changed files with 254 additions and 14 deletions

2
README
View File

@ -1,4 +1,4 @@
This is the new version (1.47.0) of the second extended file
This is the new version (1.47.1) of the second extended file
system management programs.
From time to time, I release new versions of e2fsprogs, to fix

75
debian/changelog vendored
View File

@ -1,8 +1,77 @@
e2fsprogs (1.47.1~rc1-1) experimental; urgency=medium
e2fsprogs (1.47.1~rc1-1) unstable; urgency=medium
* New upstream version
-- Theodore Y. Ts'o <tytso@mit.edu> Sun, 21 Apr 2024 23:58:04 -0400
* Add support for post-2038 timestamps on platforms with 64-bit time_t.
* Mke2fs -d can now support an input tar file if the libarchive library
is available.
* Install a udev rule to inihibit ext4 file systesm from being
automounted by udisks.
* Debugfs's 'hash' command has been enhanced to use the hash seed and
algorithm from a superblock if a file system is opened and to display
the hash seed and algorithm if the -v flag is given.
* Teach mke2fs with a new extended options, root_perms, which overrides
the permissions for the root directory for the new file system.
* Preserve any error indicator in the superblock when replaying the
journal so that a subsequent fsck can repair the file system afterwards.
* Fix potential mke2fs failures when creating a file system with an
orphan file when the storage device has a previous file system and
does not support discard/trim commands.
* E2fsck will clear the orphan_present feature silently in preen mode.
* Fix potential checksum failures when performing an online resize when
the mounted file system is actively modifying the superblock.
* Fix a bug where a checksum failure in an htree directory can cause
e2fsck's preen mode to abort unnecessarily.
* Fix e2fsck's handling of an invalid symlink in an inline_data
directory.
* Fix e4crypt from issuing a spurious "success" error message when
trying to set a policy on a non-directory.
* Fix a potential infinite loop in debugfs's logdump command in some
edge cases.
* Fix e2fsck to correctly update quota usage after optimizing
directories or deleting corrupted inodes.
* Fix fuse2fs so that directories are created with the correct
permissions instead of having the other and group write permissions
masked off.
* Fix a potential e2fsck divide by zero crash caused by a maliciously
fuzzed file system.
* Fix dumpe2fs to report free block ranges correctly for bigalloc file
file systems.
* Fix resize2fs where resizing a bigalloc file system can result in the
free cluster count in the last block group and the total free clusters
count to be incorrect.
* Avoid spurious e2scrub failures caused by trying to scrub file
syustems that do not have the journal enabled, and by aborting scrub
runs while upgrading the e2fsprogs package
* Teach tune2fs to detect a file system which is mounted but is not
mentioned in the mount namespace where tune2fs is run by treating a
block device which is busy as if it is mounted.
* If tune2fs can't find the mountpoint for a file system which is
apparently mounted (perhaps because it's not present in the current
mount namespace) when attempting to set the label or UUID in the
superblock, fall back to the old method of modifying block device and
silence printing any error messages.
* If both the primary superblock and first block group's backup
superblock are corrupted, e2fsck will now try additional backup
superblocks if they are available.
* Avoid mke2fs from creating an invalid file system with an insufficient
number of inodes when creating a file system which is very small
(100k), a block size of 1k, and an inode size of 256 bytes.
* Fix a potential deadlock caused by e2fsck being run in Direct I/O mode
with the threading optimization enabled.
* Update and clarify various man pages. (Closes: #1038286)
* Add support for SOURCE_DATE_EPOCH environment variable
* Improve resize2fs's performance by eliminating extra cache flushes.
* Improve mke2fs's performance when zeroing a large number of inode
table blocks (when lazy inode table initialization is not enabled) by
batching calls to ext2fs_zero_blocks.
* Use a safe_getenv function for all calls to fetch the environment
variable in libext2fs.
* Upgrade fuse2fs to use fuse v3.
* Build the binaries using FORTIFY_SOURCE=3 for better hardening
* Add Romainian translation.
* Update Malay translation.
-- Theodore Y. Ts'o <tytso@mit.edu> Fri, 26 Apr 2024 22:23:25 -0400
e2fsprogs (1.47.0-2.4) unstable; urgency=medium

171
doc/RelNotes/v1.47.1.txt Normal file
View File

@ -0,0 +1,171 @@
E2fsprogs 1.47.1 (April 26, 2024)
=================================
Updates/Fixes since v1.47.0:
UI and Features
---------------
Add post-2038 handling when e2fsprogs is compiled on a system with a
64-bit time_t.
Mke2fs -d can now support an input tar file if the libarchive library is
available.
Add a udev rule which inhibits ext4 file systems from being automounted
by udisks. This avoid security issues from exposing potentially
maliciously fuzzed file systems from being mounted without being
inspected using fsck first. Distributions can of course override this
feature inhibition, but then they get to own the security vulnerability
liability. Upstream ext4 file system developers are putting
distributions on notice that blindly automounting file systems from
(potentially) USB thumb drives which clueless users may have picked up
in a parking lot is a ***bad*** idea, no matter what clueless enterprise
Linux product managers might think.
The debugfs 'hash' command will use the hash seed and algorithm from the
superblock if debugfs has a file system open, instead of requiring the
user to specify those parameters explicitly as options to the hash
command. Also add a hash -v option which prints the hash parameters so
the user knows what parameters were used when calculating the hash for
the filename.
Teach mke2fs a new extended options, root_perms, which overrides the
permissions for the root directory for the new file system.
Fixes
-----
When various e2fsprogs are replaying the journal (tune2fs, fuse2fs,
e2fsck, etc.) save any error indicator in the superblock, so it can be
restored afterwards. Most of the time (at least with modern kernels) if
file system corruptions are discovered, the superblock update is
journalled. However, if the journal is aborted or the journal commit
fails, the error code might only be written in the superblock, so we
need to save it so that a subsequent fsck can repair the file system
after the journal replay.
When mke2fs was creating a file system with the orphan file inode, it
tries to read and truncate the orphan inode before it has been
initialized. If there is an inode from a previous file system located
there (as opposed to a all zeroes inode table block caused by a discard
of the flash device or a newly created cloud block device or fille
image), it can fail with bad checksum error, aborting the mke2fs
operation. Fix this in ext2fs_create_orphan_file() not trying to
truncate the orphan file if it is newly allocated (which will always be
the case when mke2fs calls this library function).
In the case where e2fsck comes across an orphan file which is empty but
the orphan_present feature is set, in preen mode, e2fsck will now clear
the orphan_present feature flag silently.
When resize2fs is performing an online resize, it's possible for reading
the superblock can race with a kernel modifying the superblock with the
checksum being invalid and causing the resize to fail with an bad
superblock checksum in the buffer cache. Have resize2fs open the file
system using O_DIRECT to avoid the superblock with an invalid checksum.
Fix a bug where a checksum failure in an htree directory can cause
e2fsck's preen mode to abort unnecessarily.
Fix e2fsck's handling of an invalid symlink in an inline_data directory.
Fix e4crypt from issuing a spurious "success" error message when trying
to set a policy on a non-directory.
Fix a potential infinite loop in debugfs's logdump command in some edge
cases.
Fix e2fsck to correctly update quota usage after optimizing directories
or deleting corrupted inodes.
Fix fuse2fs so that directories are created with the correct permissions
instead of having the other and group write permissions masked off.
Fix a potential e2fsck divide by zero crash caused by a maliciously
fuzzed file system.
Fix dumpe2fs to report free block ranges correctly for bigalloc file
file systems.
Fix resize2fs where resizing a bigalloc file system can result in the
free cluster count in the last block group and the total free clusters
count to be incorrect.
Avoid spurious e2scrub failures caused by trying to scrub file syustems
that do not have the journal enabled, and by aborting scrub runs while
upgrading the e2fsprogs package on Debian/Ubuntu.
Teach tune2fs to detect a file system which is mounted but is not
mentioned in the mount namespace where tune2fs is run by treating a
block device which is busy as if it is mounted.
If tune2fs can't find the mountpoint for a file system which is
apparently mounted (perhaps because it's not present in the current
mount namespace) when attempting to set the label or UUID in the
superblock, fall back to the old method of modifying block device and
silence printing any error messages.
If both the primary superblock and first block group's backup superblock
are corrupted, e2fsck will now try additional backup superblocks if they
are available.
Avoid mke2fs from creating an invalid file system with an insufficient
number of inodes when creating a file system which is very small (100k),
a block size of 1k, and an inode size of 256 bytes.
Fix a potential deadlock caused by e2fsck being run in Direct I/O mode
with the threading optimization enabled.
Fixed/improved various Debian packaging issues.
Update and clarify various man pages. (Addresses Debian Bug #1038286)
Performance, Internal Implementation, Development Support etc.
--------------------------------------------------------------
Add support for SOURCE_DATE_EPOCH environment variable per the
specification https://reproducible-builds.org/specs/source-date-epoch
Improve resize2fs's performance by eliminating extra cache flushes.
Improve mke2fs's performance when zeroing a large number of inode table
blocks (when lazy inode table initialization is not enabled) by batching
calls to ext2fs_zero_blocks.
Use a safe_getenv function for all calls to fetch the environment
variable in libext2fs.
Fix a massive buffer overrun bug in ext2fs_image_super_read(). This
function isn't actually used by e2image, and it's unlikely that there
are any users of this function since the most common way the e2image
file is read is via ext2fs_openfs() with the EXT2_FLAG_IMAGE_FILE, which
doesn't actually use ext2fs_image_super_read().
Add support for building fuse2fs using Fuse V3.
Use FORTIFY_SOURCE=3 when hardening is enabled for more protection.
Add support for continuous integration tests using Github Actions.
Fix Windows-specific portability bugs to allow mke2fs to create a file
system in a file which doesn't yet exist and to support file systems
larger than 2GB.
Fix a FreeBSD 14 build failure caused by changing the function signature
of qsort_r() to be aligned with the POSIX and glibc definition of
qsort_r().
Fix various portability issues for the Linux 32-bit musl C library,
GNU/Hurd and Android. (Addresses Debian Bug: #1056145)
Fix various portability problems in the regression test suite.
Fix various sanitizer, static code analysis, and compiler warnings.
Add Romainian translation.
Update Malay translation.

View File

@ -1,7 +1,7 @@
\input texinfo @c -*-texinfo-*-
@c %**start of header
@setfilename libext2fs.info
@settitle The EXT2FS Library (version 1.47.0)
@settitle The EXT2FS Library (version 1.47.1)
@synindex tp fn
@comment %**end of header
@ -60,8 +60,8 @@ by the author.
@title The EXT2FS Library
@subtitle The EXT2FS Library
@subtitle Version 1.47.0
@subtitle February 2023
@subtitle Version 1.47.1
@subtitle April 2024
@author by Theodore Ts'o
@ -101,7 +101,7 @@ by the Foundation.
@top The EXT2FS Library
This manual documents the EXT2FS Library, version 1.47.0.
This manual documents the EXT2FS Library, version 1.47.1.
@menu
* Introduction to the EXT2FS Library::

View File

@ -1,15 +1,15 @@
Begin3
Title: EXT2 Filesystem utilities
Version: 1.47.0
Entered-date: 2023-02-05
Version: 1.47.1
Entered-date: 2024-04-26
Description: The filesystem utilities for the EXT2, EXT3, and EXT4
filesystems, including e2fsck, mke2fs, dumpe2fs, and others.
Keywords: utilities, filesystem, Ext2fs, ext3, ext4
Author: tytso@mit.edu (Theodore Tso)
Maintained-by: tytso@mit.edu (Theodore Tso)
Primary-site: ftp.kernel.org /pub/linux/kernel/people/tytso/e2fsprogs
9400kB e2fsprogs-1.46.7.tar.gz
1kB e2fsprogs-1.46.7.lsm
9572kB e2fsprogs-1.47.1.tar.gz
1kB e2fsprogs-1.47.1.lsm
pAlternate-site: download.sourceforge.net /pub/sourceforge/e2fsprogs
Platforms: linux 1.2.x/1.3.x/2.0.x/2.1.x/2.2.x/2.3.x/2.4.x/2.5.x/2.6.x/3.x/4.x/5.x/6.x
Copying-policy: GPL-2/LGPL-2

View File

@ -5,7 +5,7 @@
Summary: Utilities for managing ext2/ext3/ext4 filesystems
Name: e2fsprogs
Version: 1.47.0
Version: 1.47.1
Release: 0
License: GPLv2
Group: System Environment/Base

View File

@ -10,4 +10,4 @@
*/
#define E2FSPROGS_VERSION "1.47.1-rc1"
#define E2FSPROGS_DATE "21-Apr-2024"
#define E2FSPROGS_DATE "26-Apr-2024"