From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.haj.ipfire.org (localhost [127.0.0.1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4bmD3W6jBtz37Dt for ; Mon, 21 Jul 2025 21:26:15 +0000 (UTC) Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) client-signature RSA-PSS (4096 bits)) (Client CN "mail01.haj.ipfire.org", Issuer "R11" (verified OK)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4bmD3P66VGz34Rq for ; Mon, 21 Jul 2025 21:26:09 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by mail01.ipfire.org (Postfix) with ESMTPSA id 4bmD3N2st6z6JY; Mon, 21 Jul 2025 21:26:08 +0000 (UTC) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003ed25519; t=1753133168; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=98RRIxOjVCIUEyEBwZMWir7N5zNe5yCjFJD/jKGiVkU=; b=LQvfZy+GnOYQtQ5Wb4UFiPZ4KTkctsnpRn+sz2zn26KnZXAY6Py8l39NR5b0yYxtOg8NSw C1rybZuPBj0Rg9DA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003rsa; t=1753133168; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=98RRIxOjVCIUEyEBwZMWir7N5zNe5yCjFJD/jKGiVkU=; b=Wsn5msrkYqwm1DJwElYDOhLsXo7oucjOyiuMeau8IkIYG98MfFmlxzRxkThIKnfDlU6EL7 fE/l5lIdWhGgCRnBBEKftWkoh8wuLfCeL8SjzY6d7S8Ae+Gstn3P3LBxgfV6AJjkjz7tDg B3xVjnnZRs8c21jHW974vg5lFwppGGRdXmdWZBc8TtHPdfOxAkoKp9hxihaOR5GeqRYdwi Bg9tgUEGhkdteiaiWzQtOiwiqoHa8Z+WCZTXVj9fivpmq/ubCQp0hZnXpSDaIDcCJoX27G btIEMnpg9dBYmN+Lc0wWFec0sNYoQiYRMWfAnzqdX3bz/PaTcl+L80/ahvr2dw== From: Adolf Belka To: development@lists.ipfire.org Cc: Adolf Belka Subject: [PATCH] e2fsprogs: Update to version 1.47.3 Date: Mon, 21 Jul 2025 23:25:56 +0200 Message-ID: <20250721212601.3400729-8-adolf.belka@ipfire.org> In-Reply-To: <20250721212601.3400729-1-adolf.belka@ipfire.org> References: <20250721212601.3400729-1-adolf.belka@ipfire.org> Precedence: list List-Id: List-Subscribe: , List-Unsubscribe: , List-Post: List-Help: Sender: Mail-Followup-To: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit - Update from version 1.47.2 to 1.47.3 - Update of rootfile not required - Changelog 1.47.3 UI and Features Mke2fs -d can now copy the fs-verity metadata and chattr flags into newly created file system. Add fuse2fs's support for the XATTR_CREATE and XATTR_REPLACE flags in setxattr. Add support for FALLOC_FL_ZERO_RANGE in fuse2fs. Add support to fuse2fs for the setting file attributes via fsxattr, including support for nanosecond timestamps. Add support to fuse2fs to set newer chattr flags. Add a lockfile command-line option to fuse2fs which is useful for scripts that need to know when fuse2fs is done modifying the file system after it is unmounted. Add mke2fs.conf knobs to control whether the RAID stripe or stride sizes from the storage device information depending on whether the storage device is a rotational or non-rotational device. By default don't set the RAID stripe size for non-rotational devices. E2scrub no longer runs fstrim by default, since util-linux ships with a fstrim.timer systemd file which will run fstrim on all mounted file systems. This can be re-enabled in /etc/e2scrub.conf if for some reason it is desireable to run the fstrim out of e2scrub. Fixes Fix "e2fsck -E unshare_blocks" to clear the shared_blocks flag when there are no shared blocks to clear Fix "e2fsck -n" to not abort when it trips across an EA inode which is not referenced by any inodes in the file system. Fix debugfs's dump and rdump commands to avoid looping forever when it runs across an I/O error or corupt filesystem metadata. Fix debugfs's dirsearch command on big-endian systems. Fix many fuse2fs bugs found by running fstests, including fixing support for O_APPEND, O_TRUNC, POSIX ACLs, and the immutable flag. Also fix fuse2fs to correctly remove ea_inodes if the last reference to an ea_inode is removed when an inode is removed, and to update timestmps correctly after the mkdir(2) and symlink(2) operations. Fix fuse2fs's error code handling for fallocate(), truncate() and removexattr(). Fix an integer overflow bug which resulted in fuse2fs failing to delete very large files. (Addresses Debian Bug: #1106241) Fix a (hard to reproduce) extent tree corruption bug which could be triggered by resize2fs or fuse2fs if the extent tree was especially complex Improve fuse2fs's handling of corrupted file systems. Fuse2fs doesn't support renameat2()'s RENAME_EXCHANGE or RENAME_WHITEOUT flags, so return ENOSYS instead of incorrectly handling the renameat2() request. Fuse2fs will avoid clearning the setgid bit in op_chmod if the file's group ownership is one of the calling process's group list (instead of just the primary group id). Change fuse2fs to align with kernel's behaviors by (a) clearing post-EOF on truncation, (b) validating FITRIM's parameters consistently with how the kernel does things, (c) how the "ro" mount option will replay the journal, (d) only supporting the xattr namespaces supported by the kernel, (e) clamping timestamps to the minimum and maximum value supported by the on-disk format, and (e) optionally delegating access control decisions to the kernel. Prevent fuse2fs from mounting file systems which have features that fuse2fs can't deal with. Fix error path handling in fuse2fs when servicing an op_create request. Fix spurious warnings from fuse2fs while servicing an op_fallocate request. Fix fuse2fs to correctly translate system errors from libext2fs to the negative error codes expected by the FUSE kernel driver. There aren't many; but in some cases, when the file system is corrupted, libext2fs will return EOVERFLOW and we sent a nonsense error to the kernel. Optimize ext2fs_extent_set_bmap() to avoid fragmenting the extent tree. This fixes a problem where resize2fs is trying to relocate all of the blocks in a file leading to the extent tree doubling in size, and potentially leading to a corrupted extent tree. Fix a bounding error in ext2fs_fallocate() which could cause it to allocate far more blocks than was requested. This caused a failure in fuse2fs while formatting a loopback file system stored in a large sparse file. Fix potential livelock bug in the unix_io manager. Fix invaidation support in the unix_io manager. Various man page cleanups. Performance, Internal Implementation, Development Support etc. Improve performance in e2fsck when replaying a journal with a large number of revoke blocks (which can be the case on Lustre servers). Improve tune2fs's performance by avoiding scanning the file system to update quota inodes in cases when it's not necessary. Improve fuse2fs's performance by returning inode and type information in readdir() and to use the actal inode numbers instead of asking fuse to make up inode numbers. Fix various Coverity and compiler warnings. Add two new flags for ext2fs_link(). The EXT2FS_LINK_APPEND flag causes ext2fs_link() to only search the last block in the directory, which imrpoves the scalability of creating a large number of files in a directory. The EXT2FS_LINK_EXPAND() causes ext2fs_link() to automatically expand the directory if there is no free space found to create the requested directory entry. Add a new function, ext2fs_mkdir2() which allows the flags parameter to be passed to ext2fs_link(), allows the chattr flags to be set in the newly created directory, and return the inode number for the newly created directory. Add new functions ext2fs_log2_u{32,64}() and ext2fs_log10_u{32,64}() so we don't have multiple copies of these functions in various e2fsprogs programs. Improve debugging and logging in fuse2fs. General code cleaups in fuse2fs. Improve fuse2fs's performance by allowing a larger cache in unix_io and using O_DIRECT to read and write the block device. Fixed Windows portability problems intrduced in 1.47.2. Fix various FreeBSD compile warnings and test issues. Fix MacOS build issues when compiling with libarchive and FUSE support. To avoid warning messages on newer versions of GNU grep, use "grep -E" instead of "egrep" when possible. Fix test failure for m_rootdir_acl when the build tree is hosted on btrfs. (This was caused by btrfs returning extended attributes relating to Posix ACL's in a different order than ext4 or xfs.) Fixed potention races in the Makefiles which could show up when using "make -j install". Fixed build failures when libarchive is not available. Fixed various Debian packaging issues. (Addresses Debian Bugs: #1106799, #1107595) Update Czech, Chinese, Dutch, French, Malay, Portuguese, Polish, Romainian, Serbian, Spanish, Swedish, and Ukrainian translations. Signed-off-by: Adolf Belka --- lfs/e2fsprogs | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/lfs/e2fsprogs b/lfs/e2fsprogs index ebf1995a1..6792723db 100644 --- a/lfs/e2fsprogs +++ b/lfs/e2fsprogs @@ -24,7 +24,7 @@ include Config -VER = 1.47.2 +VER = 1.47.3 THISAPP = e2fsprogs-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -40,7 +40,7 @@ objects = $(DL_FILE) $(DL_FILE) = $(DL_FROM)/$(DL_FILE) -$(DL_FILE)_BLAKE2 = 20f93b53c18396dbbf8a9564fd80181e391120554bd63a76c90c88d32616596fb7cf8e1252417b835ef3918ecf3211aebdd7a75daebee11bcb6e7b0f9bd88053 +$(DL_FILE)_BLAKE2 = 5d83a47d24f28fb4e0a6e8a145b146e6ff0de4463a16720790041f6fe750e595d749e730016bc3a9255c9ed3172b15e37f0fa8af4e8463f724f6bd221a9fa161 install : $(TARGET) @@ -73,13 +73,12 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) -mkdir -pv $(DIR_APP)/build cd $(DIR_APP)/build && \ $(DIR_APP)/configure \ - --prefix=/usr \ - --with-root-prefix="" \ - --enable-elf-shlibs \ - --disable-libblkid \ - --disable-libuuid \ - --disable-nls - + --prefix=/usr \ + --with-root-prefix="" \ + --enable-elf-shlibs \ + --disable-libblkid \ + --disable-libuuid \ + --disable-nls cd $(DIR_APP)/build && make $(MAKETUNING) cd $(DIR_APP)/build && make install cd $(DIR_APP)/build && make install-libs -- 2.50.1