Changes between v2.41 and v2.42-rc1 -------------------------------------------- commit 3721d9dcd12e806474b5302a95879b9c775e8bd6 Author: Karel Zak Date: Thu Feb 26 13:32:52 2026 +0100 build-sys: update release dates Signed-off-by: Karel Zak NEWS | 2 +- configure.ac | 2 +- meson.build | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) commit 6f08afde53f4ca721e2023413bc90d4424ba859e Author: Karel Zak Date: Thu Feb 26 13:32:37 2026 +0100 docs: add v2.42-ReleaseNotes Signed-off-by: Karel Zak Documentation/releases/v2.42-ReleaseNotes | 1710 +++++++++++++++++++++++++++++ 1 file changed, 1710 insertions(+) commit e7dfdd51b20f10387631639176b2de035329031c Author: Karel Zak Date: Thu Feb 26 11:47:41 2026 +0100 po: merge changes po/ar.po | 8988 ++++++++++++++++++++++++++------------------- po/ca.po | 9774 +++++++++++++++++++++++++++---------------------- po/cs.po | 9068 +++++++++++++++++++++++++++------------------- po/da.po | 9867 ++++++++++++++++++++++++++++---------------------- po/de.po | 8991 ++++++++++++++++++++++++++------------------- po/es.po | 9000 +++++++++++++++++++++++++++------------------- po/et.po | 9982 +++++++++++++++++++++++++++----------------------- po/eu.po | 10048 ++++++++++++++++++++++++++++----------------------- po/fi.po | 10146 ++++++++++++++++++++++++++++----------------------- po/fr.po | 9016 +++++++++++++++++++++++++++------------------- po/gl.po | 10031 ++++++++++++++++++++++++++++----------------------- po/hr.po | 9000 +++++++++++++++++++++++++++------------------- po/hu.po | 10012 ++++++++++++++++++++++++++++----------------------- po/id.po | 10180 ++++++++++++++++++++++++++++----------------------- po/it.po | 10083 ++++++++++++++++++++++++++++----------------------- po/ja.po | 9018 +++++++++++++++++++++++++++------------------- po/ka.po | 9784 +++++++++++++++++++++++++++---------------------- po/ko.po | 8995 ++++++++++++++++++++++++++------------------- po/nl.po | 8959 ++++++++++++++++++++++++++------------------- po/pl.po | 8986 ++++++++++++++++++++++++++------------------- po/pt.po | 9004 +++++++++++++++++++++++++++------------------- po/pt_BR.po | 10006 +++++++++++++++++++++++++++++---------------------- po/ro.po | 9067 +++++++++++++++++++++++++++------------------- po/ru.po | 9860 ++++++++++++++++++++++++++++---------------------- po/sk.po | 9829 ++++++++++++++++++++++++++++---------------------- po/sl.po | 10199 +++++++++++++++++++++++++++++----------------------- po/sr.po | 9031 +++++++++++++++++++++++++++------------------- po/sv.po | 9032 +++++++++++++++++++++++++++------------------- po/tr.po | 9849 ++++++++++++++++++++++++++++---------------------- po/uk.po | 9004 +++++++++++++++++++++++++++------------------- po/util-linux.pot | 9526 ++++++++++++++++++++++++++---------------------- po/vi.po | 9851 ++++++++++++++++++++++++++++---------------------- po/zh_CN.po | 9908 ++++++++++++++++++++++++++++---------------------- po/zh_TW.po | 9999 +++++++++++++++++++++++++++----------------------- 34 files changed, 184867 insertions(+), 139226 deletions(-) commit e26d3abd8a713e12b4067cb937daa73296cbf753 Author: Karel Zak Date: Thu Feb 26 11:47:27 2026 +0100 po-man: merge changes po-man/util-linux-man.pot | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit e12f870034ee3dfafff54a4c3b97688a27bb46af Author: Karel Zak Date: Thu Feb 26 11:46:51 2026 +0100 tools/git-tp-sync: fix po/ update Signed-off-by: Karel Zak tools/git-tp-sync | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit c2c8a5b82cc4bedd5cebc0ea22fbf967294a5632 Author: Karel Zak Date: Thu Feb 26 11:27:48 2026 +0100 tools/checkconfig: strip C comments before macro extraction Strip C/C++ comments (// line comments, single-line /* */ and multi-line /* */ blocks) before extracting HAVE_ and ENABLE_ macros. This avoids false positives from macros mentioned in comments, e.g. "when HAVE_PIDFD_* ..." in include/pidfd-utils.h. Signed-off-by: Karel Zak tools/checkconfig.sh | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) commit 390ce9b9d330f586d10abec2843898c85b1c8c8b Author: Karel Zak Date: Thu Feb 26 11:20:18 2026 +0100 include/path: fix HAVE_STRUCT_STATX use Signed-off-by: Karel Zak include/path.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit eb4645b28f573513d658e97aa01c979cbffe1150 Author: Karel Zak Date: Thu Feb 26 11:13:40 2026 +0100 lib/procfs: remove duplicate statfs_magic.h include Signed-off-by: Karel Zak lib/procfs.c | 1 - 1 file changed, 1 deletion(-) commit da81f6c6b101e58a6efa8660cbaef1338198a917 Author: Karel Zak Date: Thu Feb 26 11:11:28 2026 +0100 include/mountutils: remove duplicate inttypes.h include Signed-off-by: Karel Zak include/mountutils.h | 1 - 1 file changed, 1 deletion(-) commit 084b43fe0677cac32e9c09327a4c7b0087b3493d Author: Karel Zak Date: Thu Feb 26 10:39:08 2026 +0100 tools: git-version-bump, accept X.Y-devel version on master branch Allow "X.Y-devel" as a valid version format, restricted to the master branch only. Release versions (X.Y, X.Y.Z, X.Y-rcN, X.Y.Z-rcN) still require a stable/vX.Y branch. Signed-off-by: Karel Zak tools/git-version-bump | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) commit 356e39f230f1477e983c63d6eb9f1c3644616d2d Author: Karel Zak Date: Thu Feb 26 10:18:50 2026 +0100 po: update LINGUAS list po/LINGUAS | 1 + 1 file changed, 1 insertion(+) commit 9b66abb565012274fe1f4b341cdb1cf5b4523612 Author: Zayed Al-Saidi Date: Thu Feb 26 10:18:50 2026 +0100 po: add ar.po (from translationproject.org) po/ar.po | 25501 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 25501 insertions(+) commit b08fa7374113796cc0743bb31813b602ef19209e Author: Yuri Chornoivan Date: Thu Feb 26 10:18:50 2026 +0100 po: update uk.po (from translationproject.org) po/uk.po | 4762 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 2390 insertions(+), 2372 deletions(-) commit 370877c25412cc9518d07d0ae6fcf1ee6acbe22c Author: Daniel Nylander Date: Thu Feb 26 10:18:49 2026 +0100 po: update sv.po (from translationproject.org) po/sv.po | 11251 +++++++++++++++++++++++++------------------------------------ 1 file changed, 4652 insertions(+), 6599 deletions(-) commit e3cb37a1319b4b2b97cabf04ef5efb2c178f6026 Author: Мирослав Николић Date: Thu Feb 26 10:18:49 2026 +0100 po: update sr.po (from translationproject.org) po/sr.po | 4777 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 2404 insertions(+), 2373 deletions(-) commit e41b36791331985220cebbed13a76a84deac060c Author: Remus-Gabriel Chelu Date: Thu Feb 26 10:18:49 2026 +0100 po: update ro.po (from translationproject.org) po/ro.po | 4768 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 2394 insertions(+), 2374 deletions(-) commit 463453ba2936f57be621eb2b7719a5ffa42d0a9a Author: Pedro Albuquerque Date: Thu Feb 26 10:18:49 2026 +0100 po: update pt.po (from translationproject.org) po/pt.po | 4873 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 2441 insertions(+), 2432 deletions(-) commit 520f4388addc10943a57c1155ea8cb3621128134 Author: Jakub Bogusz Date: Thu Feb 26 10:18:49 2026 +0100 po: update pl.po (from translationproject.org) po/pl.po | 4879 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 2447 insertions(+), 2432 deletions(-) commit 27c673a9fd011f4bccf4785c4c5adbffa0757503 Author: Benno Schulenberg Date: Thu Feb 26 10:18:49 2026 +0100 po: update nl.po (from translationproject.org) po/nl.po | 4805 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 2414 insertions(+), 2391 deletions(-) commit e19565ac67026843902fb819b5f10f6a5603debe Author: Seong-ho Cho Date: Thu Feb 26 10:18:49 2026 +0100 po: update ko.po (from translationproject.org) po/ko.po | 4796 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 2407 insertions(+), 2389 deletions(-) commit 2c6897c4d5f73dca5f8a40eacfcef39bf96d37c2 Author: YOSHIDA Hideki Date: Thu Feb 26 10:18:49 2026 +0100 po: update ja.po (from translationproject.org) po/ja.po | 4764 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 2391 insertions(+), 2373 deletions(-) commit d7aa9a701960ee6e54f8035b715aa554a09d543e Author: Božidar Putanec Date: Thu Feb 26 10:18:49 2026 +0100 po: update hr.po (from translationproject.org) po/hr.po | 4762 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 2390 insertions(+), 2372 deletions(-) commit 3df8c7fbe921a70854ddc206ff3edb6f3d53c870 Author: Frédéric Marchal Date: Thu Feb 26 10:18:49 2026 +0100 po: update fr.po (from translationproject.org) po/fr.po | 4762 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 2390 insertions(+), 2372 deletions(-) commit 944b514f66e096f2d8efabc316bec400fa43136b Author: Antonio Ceballos Roa Date: Thu Feb 26 10:18:49 2026 +0100 po: update es.po (from translationproject.org) po/es.po | 4764 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 2391 insertions(+), 2373 deletions(-) commit 07956ac556115fb55a1d30b8b87bc9219c48fc30 Author: Christian Kirbach Date: Thu Feb 26 10:18:49 2026 +0100 po: update de.po (from translationproject.org) po/de.po | 6209 +++++++++++++++++++++++++++++--------------------------------- 1 file changed, 2857 insertions(+), 3352 deletions(-) commit e23f61f226f3191b02d68f7c3c2a1410dd7e48cf Author: Petr Písař Date: Thu Feb 26 10:18:49 2026 +0100 po: update cs.po (from translationproject.org) po/cs.po | 4768 +++++++++++++++++++++++++++++++------------------------------- 1 file changed, 2393 insertions(+), 2375 deletions(-) commit c4ff867a51404927ea5ffd5f900b7b072ef1904e Author: Karel Zak Date: Thu Feb 26 10:18:47 2026 +0100 po-man: merge changes po-man/cs.po | 8648 +++++--- po-man/de.po | 51282 +++++++++++++++++++++++++++++++------------ po-man/es.po | 42366 +++++++++++++++++++++++------------ po-man/fr.po | 9114 +++++--- po-man/ko.po | 8835 +++++--- po-man/pl.po | 45824 ++++++++++++++++++++++++++------------ po-man/pt_BR.po | 8781 +++++--- po-man/ro.po | 51316 +++++++++++++++++++++++++++++++------------ po-man/sr.po | 52365 +++++++++++++++++++++++++++++++------------- po-man/uk.po | 46638 +++++++++++++++++++++++++++------------ po-man/util-linux-man.pot | 8607 +++++--- 11 files changed, 232077 insertions(+), 101699 deletions(-) commit 484422ba9320f9eec5564b4480b811e2c2923e52 Author: Daniel Nylander Date: Thu Feb 26 10:18:05 2026 +0100 po-man: add sv.po (from translationproject.org) po-man/sv.po | 40519 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40519 insertions(+) commit 20ae4845077e7099029c19662fb723badd80acd8 Author: Zayed Al-Saidi Date: Thu Feb 26 10:18:05 2026 +0100 po-man: add ar.po (from translationproject.org) po-man/ar.po | 40362 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40362 insertions(+) commit b3f3ed893cb7c5379be16f94fe1fa59fa967c3c3 Author: Yuri Chornoivan Date: Thu Feb 26 10:18:05 2026 +0100 po-man: update uk.po (from translationproject.org) po-man/uk.po | 42168 ++++++++++++++++++--------------------------------------- 1 file changed, 12912 insertions(+), 29256 deletions(-) commit c326576d960ae0a8c840d2194a9f2e6e167d77d5 Author: Мирослав Николић Date: Thu Feb 26 10:18:05 2026 +0100 po-man: update sr.po (from translationproject.org) po-man/sr.po | 47884 +++++++++++++++++---------------------------------------- 1 file changed, 14201 insertions(+), 33683 deletions(-) commit 27731a600c72a00676691f4371927eb0aaf8ad7e Author: Remus-Gabriel Chelu Date: Thu Feb 26 10:18:05 2026 +0100 po-man: update ro.po (from translationproject.org) po-man/ro.po | 46864 +++++++++++++++++---------------------------------------- 1 file changed, 13553 insertions(+), 33311 deletions(-) commit 86fd7d16a22e66aaa46843f0537433126bb1dff4 Author: Michał Kułach Date: Thu Feb 26 10:18:04 2026 +0100 po-man: update pl.po (from translationproject.org) po-man/pl.po | 41004 ++++++++++++++++++--------------------------------------- 1 file changed, 13068 insertions(+), 27936 deletions(-) commit b9649410794d67723cb99d4af9b1e773dbd1e204 Author: Antonio Ceballos Roa Date: Thu Feb 26 10:18:04 2026 +0100 po-man: update es.po (from translationproject.org) po-man/es.po | 38407 +++++++++++++++++++-------------------------------------- 1 file changed, 12498 insertions(+), 25909 deletions(-) commit 7d13bd5bfd20b3dc9e7c3b4773f9b3151fdb23ee Author: Mario Blättermann Date: Thu Feb 26 10:18:04 2026 +0100 po-man: update de.po (from translationproject.org) po-man/de.po | 46493 +++++++++++++++++---------------------------------------- 1 file changed, 13627 insertions(+), 32866 deletions(-) commit 33e6a5e9a556d9fe9d3b66382c5e7e2c4bd5e82b Merge: e2dc9a4b4 4f2308004 Author: Karel Zak Date: Thu Feb 26 10:03:33 2026 +0100 Merge remote-tracking branch 'github/dependabot/github_actions/actions/upload-artifact-6' commit e2dc9a4b42b45ae6b4e9e5e52290ee71f108217f Merge: f9da7fe78 cbda3c5b7 Author: Karel Zak Date: Thu Feb 26 10:03:01 2026 +0100 Merge remote-tracking branch 'github/dependabot/github_actions/actions/cache-5' commit f9da7fe782729cee73d7b006152ff46db3cc06ec Merge: 464d3a3ff 7d1259e35 Author: Karel Zak Date: Thu Feb 26 09:52:22 2026 +0100 Merge branch 'PR/dmesg-kmsg-timestamp-bounds' of https://github.com/karelzak/util-linux-work * 'PR/dmesg-kmsg-timestamp-bounds' of https://github.com/karelzak/util-linux-work: dmesg: add bounds checking to parse_kmsg_timestamp() commit 464d3a3ffe45fcba158b52732b10babc39fcf3e4 Merge: 3dc8a931e e589e409b Author: Karel Zak Date: Thu Feb 26 09:52:02 2026 +0100 Merge branch 'PR/libblkid-superblocks-overflow' of https://github.com/karelzak/util-linux-work * 'PR/libblkid-superblocks-overflow' of https://github.com/karelzak/util-linux-work: libblkid: fix integer overflows in HFS+ offset calculations libblkid: fix integer overflow in linux_raid checksum size libblkid: fix integer overflow in nvidia_raid size check commit 3dc8a931e1a197c54cc4d21b10f8009a27e786a5 Author: Tobias Stoeckmann Date: Wed Feb 25 18:05:57 2026 +0100 lib/fileeq: Handle large files on 32 bit correctly The size_t iterator in ul_fileeq could overflow on 32 bit systems with large file support. If this happens, the intro array is erroneously overwritten, which could lead to false positive matches later on. The iterator is checked against a size_t limit in get_digest, which is a safe operation on 32 and 64 bit architectures. Signed-off-by: Tobias Stoeckmann lib/fileeq.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) commit cfacc42d7e877966590ffc6a04a52675c920dbb2 Author: Karel Zak Date: Wed Feb 25 11:58:16 2026 +0100 hexdump: (man) document byte order dependency in multi-byte formats Addresses: https://github.com/util-linux/util-linux/issues/4072 Signed-off-by: Karel Zak text-utils/hexdump.1.adoc | 2 ++ 1 file changed, 2 insertions(+) commit 0f6d3ab8ba0b6b1451635d67d7742e501a38b221 Author: Benno Schulenberg Date: Tue Feb 24 16:24:22 2026 +0100 fdisk: (man) correct the markup + punctuation of two option descriptions Do not colorize 'dos' and 'cylinders' as if they were placeholders -- they are literal example values. Also, use a semicolon where a comma will not do. And remove three redundant blank lines. Signed-off-by: Benno Schulenberg disk-utils/fdisk.8.adoc | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) commit b3ab0e77d0afe049de7dfd691987943a9fc41f61 Author: Karel Zak Date: Wed Feb 25 11:01:02 2026 +0100 hexdump: sanitize fiemap ioctl output Cap fm_mapped_extents to FIEMAP_EXTENTS_BATCH after each ioctl() call to prevent potential out-of-bounds access if the kernel returns more extents than requested. Reported-by: Coverity Scan Signed-off-by: Karel Zak text-utils/hexdump-display.c | 6 ++++++ 1 file changed, 6 insertions(+) commit 7d1259e35004e53437914363cac9b19a74301e8f Author: Karel Zak Date: Wed Feb 25 10:47:09 2026 +0100 dmesg: add bounds checking to parse_kmsg_timestamp() Add 'end' pointer parameter to parse_kmsg_timestamp() to validate buffer boundaries, consistent with parse_syslog_timestamp(), parse_faclev(), parse_callerid(), and skip_item(). Also remove misleading "for debug messages" comment from the null-termination in print_kmsg() -- the null-termination is required for correctness. Originally reported by Coverity (CID 501581, STRING_NULL). The Coverity report itself is not valid (the buffer is properly null-terminated before parsing), but the code was inconsistent -- parse_kmsg_timestamp() was the only parser without bounds checking. Signed-off-by: Karel Zak sys-utils/dmesg.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) commit e589e409b7fa3ecd6b0baeed7660edbf5f93bb65 Author: Karel Zak Date: Wed Feb 25 10:21:56 2026 +0100 libblkid: fix integer overflows in HFS+ offset calculations Two 32-bit multiplications using on-disk values can overflow: - leaf_node_head (uint32_t) * leaf_node_size (uint16_t) used to calculate leaf_block; overflow produces a wrong block number, causing reads from incorrect offsets. - embed_first_block (uint16_t) * alloc_block_size (uint32_t) used to calculate the embedded HFS+ volume offset; overflow truncates the result, again causing reads from wrong offsets. Fix by widening leaf_block and off to uint64_t and casting multiplication operands. Bogus results from crafted images are then safely rejected by blkid_probe_get_buffer() bounds checking and the extent loop exhaustion. Signed-off-by: Karel Zak libblkid/src/superblocks/hfs.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) commit eda846192f80947a4367029261dedb06dc3a6aae Author: Karel Zak Date: Wed Feb 25 10:14:43 2026 +0100 libblkid: fix integer overflow in linux_raid checksum size The checksum size calculation uses on-disk max_dev (uint32_t) multiplied by sizeof(dev_roles[0]). On 32-bit systems, this overflows size_t, resulting in a truncated buffer and checksum computed over wrong data, potentially allowing crafted images to bypass validation. Fix by computing in uint64_t. Note that blkid_probe_get_buffer() has a hardcoded 8 MiB limit, so unreasonably large (but non-overflowed) values are still safely rejected. Signed-off-by: Karel Zak libblkid/src/superblocks/linux_raid.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit fe2357732abf6e0f6f2af9900c0c298eff685288 Author: Karel Zak Date: Wed Feb 25 09:58:32 2026 +0100 libblkid: fix integer overflow in nvidia_raid size check The size validation `le32_to_cpu(nv->size) * 4 != NVIDIA_SUPERBLOCK_SIZE` is subject to 32-bit unsigned integer overflow. A crafted value like 0x4000001E overflows when multiplied by 4, wrapping to 120 and passing the check. The checksum loop then iterates ~1 billion times, reading far beyond the 120-byte buffer. Fix by comparing against the expected count directly without multiplication. Also add a buffer size parameter to nvraid_verify_checksum() as defense-in-depth against oversized reads. Signed-off-by: Karel Zak libblkid/src/superblocks/nvidia_raid.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) commit 43dc9a95bd74768171c0add2672c918c03dd5b6b Merge: 4609910f9 df1c9446b Author: Karel Zak Date: Wed Feb 25 09:08:28 2026 +0100 Merge branch 'PR/libblkid-iso9660-false-positive' of https://github.com/karelzak/util-linux-work * 'PR/libblkid-iso9660-false-positive' of https://github.com/karelzak/util-linux-work: libblkid: iso9660: validate root directory to reduce false positives commit 4609910f91c2413d62632216b3cf9d4ee1e1f004 Merge: 952db77a2 410a4d834 Author: Karel Zak Date: Wed Feb 25 09:08:00 2026 +0100 Merge branch 'PR/man-smartcols-env' of https://github.com/karelzak/util-linux-work * 'PR/man-smartcols-env' of https://github.com/karelzak/util-linux-work: man pages: consolidate libsmartcols environment variables commit 952db77a272442e30ab1d6d66565ea2f065109ba Author: Karel Zak Date: Wed Feb 25 09:06:17 2026 +0100 blkzone: remove unnecessary brackets Signed-off-by: Karel Zak sys-utils/blkzone.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit f154e8f651f80e8341fdd78a2c3da4b693ec282d Merge: 5298cb17c 01a97295b Author: Karel Zak Date: Wed Feb 25 09:05:15 2026 +0100 Merge branch 'wilfred/fixup-blkzone' of https://github.com/twilfredo/util-linux * 'wilfred/fixup-blkzone' of https://github.com/twilfredo/util-linux: blkzone: add more checks when printing zone write_pointer commit 5298cb17c9727ca815e7dc2582c9058716e3a0ea Merge: 9e7b5270c 6fbf7a6de Author: Karel Zak Date: Wed Feb 25 09:02:05 2026 +0100 Merge branch 'lsfd--socknetns-for-tuntap' of https://github.com/masatake/util-linux * 'lsfd--socknetns-for-tuntap' of https://github.com/masatake/util-linux: lsfd: fill SOCK.NETNS column for tuntap lsfd: load the information of the network namespace behind a tun device lsfd: (refactor) call ioctl(TUNGETDEVNETNS) from target_fd related methods lsfd: add stubs of target_fd related methods to cdev_class tests: (lsfd::*) revise the way to use "$?" tests: (lsns::*) revise the way to use "$?" commit 9e7b5270c733a63d1871446ac633bc3f6d524551 Author: Karel Zak Date: Wed Feb 25 08:55:42 2026 +0100 fsck.cramfs: fix off-by-one heap write in do_symlink() In do_symlink(), the decompressed symlink target is NUL-terminated by writing outbuffer[size] = 0. The outbuffer is allocated as blksize * 2 bytes, but uncompress_block() can return up to blksize * 2, so when size == blksize * 2 the NUL write lands one byte past the heap allocation. Allocating one extra byte ensures the NUL terminator stays within bounds. The stream.avail_out value remains blksize * 2, so decompression behavior is unchanged. Reported-by: Pavel Kohout, Aisle Research, www.aisle.com Signed-off-by: Karel Zak disk-utils/fsck.cramfs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 6fbf7a6de59fda8d8b98518ff4b6d38e1b4a5784 Author: Masatake YAMATO Date: Thu Feb 5 06:14:52 2026 +0900 lsfd: fill SOCK.NETNS column for tuntap There are two network namespaces associated with a file descriptor opening /dev/net/tun. One is the device network namespace (devnetns). A tun/tap file descriptor is associated with a network device, and the devnetns is the namespace in which that device exists. lsfd already provides this information via the TUN.DEVNETNS column. The other is the socket network namespace (socknetns). A tun/tap file descriptor is also associated with a socket, and the socknetns is the namespace in which that socket was created. lsfd already has the SOCK.NETNS column for reporting this information, but it was not filled for file descriptors opening /dev/net/tun. Signed-off-by: Masatake YAMATO lsfd-cmd/cdev.c | 36 ++++++++++----------- lsfd-cmd/lsfd.1.adoc | 2 +- lsfd-cmd/lsfd.h | 1 + lsfd-cmd/sock.c | 2 +- .../lsfd/mkfds-cdev-tun-domestic-socknetns | 1 + .../expected/lsfd/mkfds-cdev-tun-foreign-socknetns | 1 + tests/ts/lsfd/mkfds-cdev-tun | 37 ++++++++++++++++++++++ 7 files changed, 59 insertions(+), 21 deletions(-) commit fc18b37aa7515750564c93ae706b55556dfdd71c Author: Masatake YAMATO Date: Thu Feb 5 05:50:24 2026 +0900 lsfd: load the information of the network namespace behind a tun device Signed-off-by: Masatake YAMATO lsfd-cmd/cdev.c | 4 +++- lsfd-cmd/lsfd.h | 2 ++ lsfd-cmd/sock.h | 1 - 3 files changed, 5 insertions(+), 2 deletions(-) commit 1154bb50ea8d7e2b16ad1413ad7c2058af6745d2 Author: Masatake YAMATO Date: Thu Feb 5 05:42:16 2026 +0900 lsfd: (refactor) call ioctl(TUNGETDEVNETNS) from target_fd related methods In the original code, the attach_xinfo method of the cdev_tun_ops struct called the ioctl. The attach_xinfo method retrieved the fd passing to the ioctl by calling call_with_foreign_fd utility function. In the last commit, we added the target_fd related methods in cdev_tun_ops struct. The caller side of the target_fd related methods calls call_with_foreign_fd. We can reduce the code calling call_with_foreign_fd by moving the code calling ioctl from the attach_xinfo method to the target_fd related methods. Signed-off-by: Masatake YAMATO lsfd-cmd/cdev.c | 48 ++++++++++++++++++++++++++---------------------- 1 file changed, 26 insertions(+), 22 deletions(-) commit ff3ec1f1300fe547e237668b7e68febd67536f4a Author: Masatake YAMATO Date: Thu Feb 5 05:22:09 2026 +0900 lsfd: add stubs of target_fd related methods to cdev_class Signed-off-by: Masatake YAMATO lsfd-cmd/cdev.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) commit 96ede0703b3585470fe512a5ed8f292e04832028 Author: Masatake YAMATO Date: Wed Feb 25 02:58:02 2026 +0900 tests: (lsfd::*) revise the way to use "$?" * Don't use $? for printing the result of if-conditions; use literals instead (0 or 1). * Don' use $? for referring to the result of wait built-in; store the result to $RC just after the wait built-in invocation. * Use ${PIPESTATUS[]} instead of $?. Signed-off-by: Masatake YAMATO tests/ts/lsfd/column-ainodeclass | 5 ++++- tests/ts/lsfd/column-name | 5 ++++- tests/ts/lsfd/column-type | 5 ++++- tests/ts/lsfd/column-xmode | 8 ++++++-- tests/ts/lsfd/filter-floating-point-nums | 4 ++-- tests/ts/lsfd/mkfds-bpf-map | 5 ++++- tests/ts/lsfd/mkfds-bpf-prog | 5 ++++- tests/ts/lsfd/mkfds-cdev-tun | 12 ++++++------ tests/ts/lsfd/mkfds-directory | 2 +- tests/ts/lsfd/mkfds-eventfd | 16 ++++++++-------- tests/ts/lsfd/mkfds-foreign-sockets | 4 +++- tests/ts/lsfd/mkfds-netlink-groups | 4 +++- tests/ts/lsfd/mkfds-netlink-protocol | 4 +++- tests/ts/lsfd/mkfds-netns | 16 +++++++++------- tests/ts/lsfd/mkfds-pidfd | 4 +++- tests/ts/lsfd/mkfds-pipe-no-fork | 2 +- tests/ts/lsfd/mkfds-unix-in-netns | 5 ++++- 17 files changed, 69 insertions(+), 37 deletions(-) commit 5b9bfe8e85c476c437a6428f31d2abae49de15d7 Author: Masatake YAMATO Date: Wed Feb 25 03:16:40 2026 +0900 tests: (lsns::*) revise the way to use "$?" Signed-off-by: Masatake YAMATO tests/ts/lsns/filter | 4 +++- tests/ts/lsns/netns-from-sock | 4 +++- tests/ts/lsns/netnsid-for-persistent-namespaces | 7 +++++-- 3 files changed, 11 insertions(+), 4 deletions(-) commit 410a4d83473278429265f552fe24207bf76e96d1 Author: Karel Zak Date: Tue Feb 24 09:54:12 2026 +0100 man pages: consolidate libsmartcols environment variables Introduce man-common/env-smartcols.adoc to describe all libsmartcols environment variables (LIBSMARTCOLS_DEBUG, LIBSMARTCOLS_DEBUG_PADDING, LIBSMARTCOLS_JSON) in one place. Replace duplicated LIBSMARTCOLS_DEBUG descriptions in cfdisk, fdisk, sfdisk, findmnt, lsblk, and column man pages with an include of the new common file. Addresses: https://github.com/util-linux/util-linux/issues/3971 Signed-off-by: Karel Zak disk-utils/cfdisk.8.adoc | 6 +----- disk-utils/fdisk.8.adoc | 6 +----- disk-utils/sfdisk.8.adoc | 4 ++-- man-common/Makemodule.am | 1 + man-common/env-smartcols.adoc | 11 +++++++++++ man-common/meson.build | 1 + misc-utils/findmnt.8.adoc | 6 +----- misc-utils/lsblk.8.adoc | 6 +----- po-man/po4a.cfg | 1 + text-utils/column.1.adoc | 10 +--------- 10 files changed, 21 insertions(+), 31 deletions(-) commit df1c9446b69b79d535978f7a89aebee716f45550 Author: Karel Zak Date: Tue Feb 24 12:41:39 2026 +0100 libblkid: iso9660: validate root directory to reduce false positives The CD001 magic signature at 32KB offset can match file data content on other filesystems (e.g. an .iso file stored on XFS whose data blocks happen to land at the device offset where blkid looks for the ISO 9660 Primary Volume Descriptor). This causes blkid to report ambivalent results for a device that has only one real filesystem. Add validation of the root directory record from the PVD: read the root directory extent and verify that the first entry is a valid "." self-reference (file_id_len == 1, file_id == 0x00, extent location pointing back to itself). This check reliably rejects false positive CD001 signatures because the root directory LBA from the PVD points to a different location on the device that contains unrelated data. Addresses: https://github.com/util-linux/util-linux/issues/4031 Signed-off-by: Karel Zak libblkid/src/superblocks/iso9660.c | 44 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) commit 8b9685d01751c182f5b92c0f736d58d3d94335aa Merge: cfad19bba cb3942d0a Author: Karel Zak Date: Tue Feb 24 10:11:02 2026 +0100 Merge branch 'pager_async_sig' of https://github.com/stoeckmann/util-linux * 'pager_async_sig' of https://github.com/stoeckmann/util-linux: lib/pager: Remove unused code lib/pager: Use async-signal safe signal handler commit cfad19bba3501b267e9c054ffd7b3ba3126ccdfc Author: Karel Zak Date: Tue Feb 24 10:06:16 2026 +0100 jsonwrt: rename ul_json_format_t to enum ul_json_format The _t suffix is reserved by POSIX. Use a plain enum tag instead. Addresses: https://github.com/util-linux/util-linux/pull/4025 Signed-off-by: Karel Zak include/jsonwrt.h | 8 ++++---- lib/jsonwrt.c | 2 +- libsmartcols/src/smartcolsP.h | 2 +- libsmartcols/src/table.c | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) commit 874b2d19cc5aefeef1614ab4a79319a55ea91d7f Merge: 9e608d153 c0c03f6b8 Author: Karel Zak Date: Tue Feb 24 09:38:09 2026 +0100 Merge branch 'feat/3971_compact_json_and_jsonl_support' of https://github.com/echoechoin/util-linux * 'feat/3971_compact_json_and_jsonl_support' of https://github.com/echoechoin/util-linux: jsonwrt: simplify ul_jsonwrt_empty() and add comments for COMPACT format column: using switch-case replaces if-else column: add JSON compact format output subtest. column: add JSON LINES format output subtest. column: introduce LIBSMARTCOLS_JSON environment argument jsonwrt: support Compact JSON format output libsmartcols: support JSON Lines format output commit 9e608d1535c09938190eb9c14a5e24b23976b6d6 Merge: f70cc9089 4de94662e Author: Karel Zak Date: Tue Feb 24 09:29:30 2026 +0100 Merge branch 'pager_error' of https://github.com/stoeckmann/util-linux * 'pager_error' of https://github.com/stoeckmann/util-linux: lib/pager: Handle dup errors commit f70cc90895bff39b8740bbe4d9d1799e244ec524 Merge: edadb3f5c ebadfc7e3 Author: Karel Zak Date: Tue Feb 24 09:13:15 2026 +0100 Merge branch 'libblkid_fix_cache_garbage_collection' of https://github.com/cgoesche/util-linux-fork * 'libblkid_fix_cache_garbage_collection' of https://github.com/cgoesche/util-linux-fork: blkid: add --garbage-collect test libblkid: remove empty loop devices from cache when garbage collecting commit 01a97295b47d49a676c5c6238536ead5ae7e9124 Author: Wilfred Mallawa Date: Tue Feb 24 09:43:29 2026 +1000 blkzone: add more checks when printing zone write_pointer The zone write pointer is also invalid for READONLY and OFFLINE zones, so handle such cases appropriately by not displaying a write pointer for READONLY and OFFLINE zones. Signed-off-by: Wilfred Mallawa Fixes: b032247f48 ("blkzone: don't show wptr when zones are full") sys-utils/blkzone.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) commit cb3942d0a80797becb80e177602de4fba9c864d4 Author: Tobias Stoeckmann Date: Mon Feb 23 20:01:50 2026 +0100 lib/pager: Remove unused code The pager_process.pid check already happens before wait_for_pager is called now. Also, errno is not used anymore after the signal handler, so no need to save it. Signed-off-by: Tobias Stoeckmann lib/pager.c | 5 ----- 1 file changed, 5 deletions(-) commit 89588ac31e48d25292406b932b6479f12e30bf42 Author: Tobias Stoeckmann Date: Mon Feb 23 19:51:25 2026 +0100 lib/pager: Use async-signal safe signal handler Accessing pager_process.pid from within a signal handler is, by strict C language interpretation, not signal safe. Wait for all children (and thus for pager_process.pid as well) instead. The current users dmesg and fdisk have no further children so this is a good compromise here. The signal handler is used for SIGINT, SIGHUP, SIGTERM, SIGQUIT. From a terminal perspective, these are normally intercepted by the child, not the parent. Since wait_for_pager is never reached by a signal handler anymore, a regular err() call is now possible. Just make sure that no exit function handler could ever loop endlessly. Signed-off-by: Tobias Stoeckmann lib/pager.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) commit 4de94662efe7cdb5d4a2bc55662110cb29653177 Author: Tobias Stoeckmann Date: Mon Feb 23 19:57:34 2026 +0100 lib/pager: Handle dup errors If dup fails, e.g. due to open file descriptor limitations, gracefully handle the situation and do not start the pager. Signed-off-by: Tobias Stoeckmann lib/pager.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) commit edadb3f5c8bb38a21cb9af98230731f011836258 Merge: 49797b994 b5155e131 Author: Karel Zak Date: Mon Feb 23 14:20:13 2026 +0100 Merge branch 'dmesg_sigpipe' of https://github.com/stoeckmann/util-linux * 'dmesg_sigpipe' of https://github.com/stoeckmann/util-linux: lib/pager: Gracefully handle SIGPIPE errors dmesg: Gracefully handle EPIPE errors dmesg: Register pager_close as exit handler commit ebadfc7e3374941425d6d4a48ee111bb7bb4c40a Author: Christian Goeschel Ndjomouo Date: Sat Feb 21 20:21:05 2026 -0500 blkid: add --garbage-collect test Signed-off-by: Christian Goeschel Ndjomouo tests/ts/blkid/cache | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) commit 49797b9945ce02ce6ab3651060ce2bd802162840 Merge: 2f2e7ed8d c8c48ab84 Author: Karel Zak Date: Mon Feb 23 14:06:57 2026 +0100 Merge branch 'lsmem_show_zones_on_uncommon_phy_mem_layout' of https://github.com/cgoesche/util-linux-fork * 'lsmem_show_zones_on_uncommon_phy_mem_layout' of https://github.com/cgoesche/util-linux-fork: lsmem: fix missing zone info when memory blocks start at an index other than 0 commit 2f2e7ed8dbec379097e3ceaf863a70156b239574 Merge: 2880666ed 493b4e388 Author: Karel Zak Date: Mon Feb 23 13:11:58 2026 +0100 Merge branch 'fileeq_typos' of https://github.com/stoeckmann/util-linux * 'fileeq_typos' of https://github.com/stoeckmann/util-linux: lib/fileeq: Fix typos commit 2880666edadafd052908e7b82b1a3e54236ddc1f Merge: 5d7f150ea 9bf2e417a Author: Karel Zak Date: Mon Feb 23 13:09:59 2026 +0100 Merge branch 'fileeq_debug' of https://github.com/stoeckmann/util-linux * 'fileeq_debug' of https://github.com/stoeckmann/util-linux: lib/fileeq: Extend debug message lib/fileeq: Fix formatters commit 5d7f150eac1e1eda13dbc4cf7d870afda1817f39 Merge: 0b1297ff4 3dad59c05 Author: Karel Zak Date: Mon Feb 23 13:07:58 2026 +0100 Merge branch 'hardlink_oob' of https://github.com/stoeckmann/util-linux * 'hardlink_oob' of https://github.com/stoeckmann/util-linux: lib/fileeq: Prevent OOB with short read files commit 07029c517cb78f0826b37d3534a1709401c86149 Author: Christian Goeschel Ndjomouo Date: Fri Feb 20 22:42:02 2026 -0500 libblkid: remove empty loop devices from cache when garbage collecting The cache garbage collection (blkid --garbage-collect) does not work for entries of loop devices even when these have been detached. The previous logic performed a simple stat() on the dev node path, however this is not enough for loop devices as their nodes can remain present even if they aren't backed by any file or other block device. Therefore, it is more sane to verify if the loop device has a backing file and if not, we remove it from the cache. Closes: #4061 Signed-off-by: Christian Goeschel Ndjomouo libblkid/src/cache.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) commit 0b1297ff4fcf525f06371d188fef1b3d6e31ae54 Merge: fc049eb77 23d3a58bb Author: Karel Zak Date: Mon Feb 23 11:40:48 2026 +0100 Merge branch 'blkdiscard_add_more_longopts_tests' of https://github.com/cgoesche/util-linux-fork * 'blkdiscard_add_more_longopts_tests' of https://github.com/cgoesche/util-linux-fork: blkdiscard: (tests) add more long option tests commit fc049eb77726c7d15c389ec33a0c3f8c7a9f94a1 Merge: 656de0b86 4819417fe Author: Karel Zak Date: Mon Feb 23 11:06:51 2026 +0100 Merge branch 'choom_add_tests' of https://github.com/cgoesche/util-linux-fork * 'choom_add_tests' of https://github.com/cgoesche/util-linux-fork: choom: (testcoverage) add long options tests commit 656de0b86a16acd1b839c2f216b96330c7536e88 Merge: 7ae8946ef 4504e9b23 Author: Karel Zak Date: Mon Feb 23 11:05:10 2026 +0100 Merge branch 'blkid_add_more_long_opts_tests' of https://github.com/cgoesche/util-linux-fork * 'blkid_add_more_long_opts_tests' of https://github.com/cgoesche/util-linux-fork: blkid: (testcoverage) add more long option tests commit 7ae8946ef21d20f94179a6e7dd8c123b5b64efa1 Merge: b7191f09b de90ac36e Author: Karel Zak Date: Mon Feb 23 11:03:13 2026 +0100 Merge branch 'manpages-fix' of https://github.com/mariobl/util-linux * 'manpages-fix' of https://github.com/mariobl/util-linux: Fix formatting in getino.1.adoc commit b7191f09b2dfbdaf5201ab834ed2637358e98ab1 Author: Karel Zak Date: Mon Feb 23 11:00:20 2026 +0100 login: improve comments for signal handling in fork_session() Add more detailed comments explaining the signal blocking and sigsuspend() pattern introduced by the previous commit. The key insight is that sigsuspend() is the actual wait point where SIGTERM/SIGHUP are forwarded to the child, while waitpid() with WNOHANG only performs non-blocking checks for terminated children. Signed-off-by: Karel Zak login-utils/login.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) commit c0c03f6b80471eb51149eb6ecb90b3c70f0a5f70 Author: WanBingjiang Date: Mon Feb 23 16:32:48 2026 +0800 jsonwrt: simplify ul_jsonwrt_empty() and add comments for COMPACT format Consolidate duplicated LINE/COMPACT branches in ul_jsonwrt_empty() into a single else-branch, since they produce identical output. Add comments explaining the indent depth checks in ul_jsonwrt_open() and ul_jsonwrt_close() for COMPACT format. lib/jsonwrt.c | 28 +++++++++++++--------------- misc-utils/blkid.c | 2 +- 2 files changed, 14 insertions(+), 16 deletions(-) commit 6c6847bce85119860650ade1b64d38bad3e555d0 Author: WanBingjiang Date: Thu Feb 5 18:02:47 2026 +0800 column: using switch-case replaces if-else lib/jsonwrt.c | 43 +++++++++++++++++++++++++------------------ 1 file changed, 25 insertions(+), 18 deletions(-) commit bc4b2139689856e4badf652b4ad85c97e18a321e Author: WanBingjiang Date: Thu Feb 5 17:30:12 2026 +0800 column: add JSON compact format output subtest. tests/expected/column/table-json-compact | 43 ++++++++++++++++++++++++++++++++ tests/ts/column/table | 11 ++++++++ 2 files changed, 54 insertions(+) commit 840dadc030ae352f7bb4ff60a5815fd333961064 Author: WanBingjiang Date: Thu Feb 5 17:13:44 2026 +0800 column: add JSON LINES format output subtest. tests/expected/column/table-json-lines | 41 ++++++++++++++++++++++++++++++++++ tests/ts/column/table | 11 +++++++++ 2 files changed, 52 insertions(+) commit b30edbe5f44ad28c44eb3b77d9b4a246d0dd2ba5 Author: WanBingjiang Date: Thu Feb 5 17:11:06 2026 +0800 column: introduce LIBSMARTCOLS_JSON environment argument text-utils/column.1.adoc | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) commit 879d6343dce930e3e7b0b2a4eaa12dc9d231215b Author: WanBingjiang Date: Thu Feb 5 16:53:29 2026 +0800 jsonwrt: support Compact JSON format output lib/jsonwrt.c | 78 ++++++++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 67 insertions(+), 11 deletions(-) commit 08f4133918df90caa4ee4ebd118a8696a7849833 Author: WanBingjiang Date: Thu Feb 5 17:02:39 2026 +0800 libsmartcols: support JSON Lines format output include/jsonwrt.h | 9 +++++- lib/jsonwrt.c | 64 +++++++++++++++++++++++++------------------ libfdisk/src/script.c | 2 +- libsmartcols/src/filter.c | 2 +- libsmartcols/src/print-api.c | 22 +++++++++------ libsmartcols/src/print.c | 2 +- libsmartcols/src/smartcolsP.h | 2 ++ libsmartcols/src/table.c | 17 ++++++++++++ sys-utils/dmesg.c | 2 +- 9 files changed, 83 insertions(+), 39 deletions(-) commit 4819417fed490ae405b226e22533eb8d24025694 Author: Christian Goeschel Ndjomouo Date: Sat Feb 21 22:04:38 2026 -0500 choom: (testcoverage) add long options tests Signed-off-by: Christian Goeschel Ndjomouo tests/commands.sh | 1 + tests/expected/choom/choom | 1 + tests/ts/choom/choom | 47 ++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 49 insertions(+) commit 4504e9b238c15a54153ab2745386b8abd0157a96 Author: Christian Goeschel Ndjomouo Date: Sat Feb 21 21:09:27 2026 -0500 blkid: (testcoverage) add more long option tests Signed-off-by: Christian Goeschel Ndjomouo tests/expected/blkid/options-label | 1 + tests/expected/blkid/options-label copy | 1 + tests/expected/blkid/options-list-filesystems | 1 + tests/expected/blkid/options-list-one | 1 + tests/expected/blkid/options-match-tag | 1 + tests/expected/blkid/options-match-token | 1 + tests/expected/blkid/options-match-types | 1 + tests/ts/blkid/options | 89 +++++++++++++++++++++++++++ 8 files changed, 96 insertions(+) commit 23d3a58bb21546ebc5de7c408a3a2d0b3d2963dd Author: Christian Goeschel Ndjomouo Date: Fri Feb 20 20:34:50 2026 -0500 blkdiscard: (tests) add more long option tests Signed-off-by: Christian Goeschel Ndjomouo tests/expected/blkdiscard/offsets | 2 ++ tests/ts/blkdiscard/offsets | 3 +++ 2 files changed, 5 insertions(+) commit de90ac36e0b914d8b794d66c829a59c5785984a8 Author: Mario Blättermann Date: Fri Feb 20 13:47:36 2026 +0100 Fix formatting in getino.1.adoc misc-utils/getino.1.adoc | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) commit c8c48ab84d508223631fffab6403d4607a41ef8c Author: Christian Goeschel Ndjomouo Date: Thu Feb 19 19:02:09 2026 -0500 lsmem: fix missing zone info when memory blocks start at an index other than 0 On systems that have an uncommon physical memory layout, e.g. where hotpluggable memory blocks start at an offset greater than 0, we failed to set the 'have_zones' control flag, which caused an omission of the ZONES information of the listed individual memory block or a block range. This is because we explicitly tested for /sys/devices/system/memory/memory0/valid_zones, however it is better to simply look for any memory directory entry and validate the existence of the valid_zones attribute. Closes: #4055 Signed-off-by: Christian Goeschel Ndjomouo sys-utils/lsmem.c | 39 ++++++++++++++++++++++++++++++++++++--- 1 file changed, 36 insertions(+), 3 deletions(-) commit eecf5e9cd9e48c6b326742fc3cce3a99b189b05a Author: Tobias Stoeckmann Date: Thu Feb 19 20:58:10 2026 +0100 login: Fix signal race in child handling Two cases exist in which login might send signals to a process which is actually not a child process: - If SIGCHLD is set to SIG_IGN by login's parent process (unlikely), then no zombie process exists. The kernel could already reuse the PID for another process just before login's signal_handler function sends a signal to its stored child PID -- which was already reused - If wait succeeds, the PID can be reused by the kernel for another process. The registered signal_handlers could still use the stored child PID to send signals -- but erroneously to a wrong process Fix these cases by blocking and unblocking SIGCHLD and signal_handler triggering signals around the wait call. Set child_pid to 0 after wait succeeded and before signal_handler signals are unblocked again. Signed-off-by: Tobias Stoeckmann login-utils/login.c | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) commit b5155e131369869b3964652ffee1be9c41936f91 Author: Tobias Stoeckmann Date: Thu Feb 19 18:16:32 2026 +0100 lib/pager: Gracefully handle SIGPIPE errors A user might prematurely close the pager before the parent wrote its full output into the pipe. This triggers SIGPIPE, which would eventually lead to an error return value. The programs dmesg and fdisk can keep running just fine in these cases. In fact, dmesg's source code was already prepared for EPIPE error return values. If the pager returns with a success return value, ignore SIGPIPE. If there was an error within the pager, stop the parent as well. With this, dmesg does not return an error anymore if the ring buffer was not fully sent to the pager before it was closed. Signed-off-by: Tobias Stoeckmann lib/pager.c | 29 +++++++++++++++++++++++------ 1 file changed, 23 insertions(+), 6 deletions(-) commit 01745e8593420f864d0904b5a4913796e513f97d Author: Tobias Stoeckmann Date: Thu Feb 19 18:14:23 2026 +0100 dmesg: Gracefully handle EPIPE errors Just calling exit with a success return value in case of an EPIPE error in safe_fwrite is not precise enough. If dmesg was called with "-c", i.e. to print and then clear the ring buffer, a successful return value should mean that the ring buffer is cleared as well. Instead, continue operation on EPIPE error but stop any further regular output. Signed-off-by: Tobias Stoeckmann sys-utils/dmesg.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) commit f644fa19e9fd4968819806c683c9ef219e2b6592 Author: Tobias Stoeckmann Date: Thu Feb 19 18:13:25 2026 +0100 dmesg: Register pager_close as exit handler Make sure that pager is properly closed even in case of err/errx calls while pager is running. Signed-off-by: Tobias Stoeckmann sys-utils/dmesg.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit 55a2adc8307600b3df836190821705ed6b6b9553 Merge: a48743c46 f8b9465cb Author: Karel Zak Date: Thu Feb 19 13:18:26 2026 +0100 Merge branch 'pg_warn' of https://github.com/stoeckmann/util-linux * 'pg_warn' of https://github.com/stoeckmann/util-linux: pg: Fix compiler warning commit a48743c461cc5ff135a3ce9262c45b23ab7eff0b Merge: 73fd62b94 9d4385e63 Author: Karel Zak Date: Thu Feb 19 12:59:45 2026 +0100 Merge branch 'PR/setpriv-apparmor-exec' of https://github.com/karelzak/util-linux-work * 'PR/setpriv-apparmor-exec' of https://github.com/karelzak/util-linux-work: setpriv: use AppArmor LSM-specific proc interface commit 73fd62b94fb4b6f10411cb299080b31e82080d82 Merge: 4ee81e2f1 889d454aa Author: Karel Zak Date: Thu Feb 19 12:59:26 2026 +0100 Merge branch 'PR/agetty-netlink-cloexec' of https://github.com/karelzak/util-linux-work * 'PR/agetty-netlink-cloexec' of https://github.com/karelzak/util-linux-work: lib/netlink: set SOCK_CLOEXEC on netlink socket commit 4ee81e2f1b7bc64b6a0f957025d199707e455ea6 Merge: 8b29aeb08 8264aabcd Author: Karel Zak Date: Thu Feb 19 12:59:02 2026 +0100 Merge branch 'PR/blkid-btrfs-zone-cleanup' of https://github.com/karelzak/util-linux-work * 'PR/blkid-btrfs-zone-cleanup' of https://github.com/karelzak/util-linux-work: libblkid: (btrfs) use BTRFS_NR_SB_LOG_ZONES and rep->zones commit 8b29aeb081e297e48c4c1ac53d88ae07e1331984 Author: Karel Zak Date: Thu Feb 19 12:20:28 2026 +0100 login: use original FQDN for PAM_RHOST When login -h is invoked, init_remote_info() strips the local domain suffix from the hostname (FQDN to short name) before storing it in cxt->hostname. This truncated value is then used for PAM_RHOST, which can bypass pam_access host deny rules that match on the FQDN. Preserve the original -h hostname in a new cmd_hostname field and use it for PAM_RHOST, while keeping the truncated hostname for utmp/wtmp and logging unchanged. Note, the real-world impact is low -- login -h is only used by legacy telnet/rlogin daemons, and exploitation requires FQDN-specific pam_access rules on a system still using these obsolete services. Reported-by: Asim Viladi Oglu Manizada Signed-off-by: Karel Zak login-utils/login.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) commit 3dad59c05c97d7515053bc0726e5392e0ffb63b8 Author: Tobias Stoeckmann Date: Wed Feb 18 18:04:54 2026 +0100 lib/fileeq: Prevent OOB with short read files Using the Linux Crypto API stores hash sums of read chunks in memory. It trusts that get_digest is called as often as "read blocks" exist in file. It becomes an issue with files which have less content than st_size suggests, e.g. files in sysfs. Eventually, the iterator n will be eq->blocksmax, because the EOF is never noticed. Writing this next hash sum into memory would lead to an out of boundary write. Verify that n is less than eq->blocksmax. If this is not true anymore, treat it as an error so files are considered to be not equal. This is much safer than erroneously treating them as equal. Signed-off-by: Tobias Stoeckmann lib/fileeq.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) commit 9bf2e417a57284e3bc2486402e07029297daf57a Author: Tobias Stoeckmann Date: Wed Feb 18 21:10:21 2026 +0100 lib/fileeq: Extend debug message Log how many bytes were actually read, not just how many were requested. This difference occurs for files smaller than 32 bytes. Signed-off-by: Tobias Stoeckmann lib/fileeq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit f90ca62fc6b7b71d3cad4e804e51ee808eda7d75 Author: Tobias Stoeckmann Date: Wed Feb 18 21:10:06 2026 +0100 lib/fileeq: Fix formatters Use formatters for given data types. Signed-off-by: Tobias Stoeckmann lib/fileeq.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 493b4e38872a271199ca2a60187b4347747e5f7e Author: Tobias Stoeckmann Date: Wed Feb 18 18:15:02 2026 +0100 lib/fileeq: Fix typos Fix grammar and typos in comments. No functional change. Signed-off-by: Tobias Stoeckmann lib/fileeq.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) commit f8b9465cb874ce20a9cda7f608b485d5e3db2b90 Author: Tobias Stoeckmann Date: Wed Feb 18 18:26:52 2026 +0100 pg: Fix compiler warning Seen compiler warning with GCC 15.2.1 and glibc 2.43: ``` text-utils/pg.c: In function ‘prompt’: text-utils/pg.c:621:24: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] 621 | if ((p = strstr(pstring, "%d")) == NULL) { | ^ ``` This happens if strstr is actually a preprocessor definition with a __glibc_const_generic. For this, __GLIBC_USE (ISOC23) must be true. Setting the pointer to const does not hurt and clarifies that the content is not modfied. Signed-off-by: Tobias Stoeckmann text-utils/pg.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 59f95edffb874a3fd22c851909dd179f7855179d Merge: d48a6626b 1746d1302 Author: Karel Zak Date: Wed Feb 18 12:36:16 2026 +0100 Merge branch 'PR/pidfd-utils-have-defines' of https://github.com/karelzak/util-linux-work * 'PR/pidfd-utils-have-defines' of https://github.com/karelzak/util-linux-work: pidfd-utils: move USE_PIDFD_INO_SUPPORT after syscall fallbacks pidfd-utils: define HAVE_PIDFD_* when syscall fallbacks are used commit d48a6626b45a0968ba67701eef097d6149f2bd74 Author: Karel Zak Date: Wed Feb 18 10:59:30 2026 +0100 nsenter: use USE_NAMESPACE_ID_SUPPORT macro for nsid feature Replace direct HAVE_STRUCT_NSFS_FILE_HANDLE ifdefs with a feature-specific USE_NAMESPACE_ID_SUPPORT macro that also requires HAVE_PIDFD_OPEN, since the namespace ID support depends on pidfd_open(). Addresses: https://github.com/util-linux/util-linux/pull/4044 Signed-off-by: Karel Zak sys-utils/nsenter.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) commit 611a54c76e813bfe18ff013efd1f984822d60a1d Author: Karel Zak Date: Wed Feb 18 10:47:19 2026 +0100 nsenter: fix minor issues with namespace ID support - fix pidfd_self FD leak when ioctl(PIDFD_GET_MNT_NAMESPACE) fails - fix "namesapces" typo in man page - document "./" disambiguation for files starting with ":" - use standard C initializer = { 0 } instead of = {} Addresses: https://github.com/util-linux/util-linux/pull/4044 Signed-off-by: Karel Zak sys-utils/nsenter.1.adoc | 3 ++- sys-utils/nsenter.c | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) commit 1746d13022024cd49b6dd4bd30d9a25723ad28a6 Author: Karel Zak Date: Wed Feb 18 10:34:46 2026 +0100 pidfd-utils: move USE_PIDFD_INO_SUPPORT after syscall fallbacks Signed-off-by: Karel Zak include/pidfd-utils.h | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) commit 381d35a2898b274ebc3847260edca58bef509917 Author: Karel Zak Date: Wed Feb 18 10:30:25 2026 +0100 pidfd-utils: define HAVE_PIDFD_* when syscall fallbacks are used Follow the pattern already used in fileutils.h for close_range() and statx(). Signed-off-by: Karel Zak include/pidfd-utils.h | 3 +++ 1 file changed, 3 insertions(+) commit f2a5997869d8edcf2801a82aa2075f3f7498b73a Author: Xiao Liang Date: Sat Feb 14 11:23:42 2026 +0800 nsenter: Support specifying namespace by ID Linux kernel v6.19 introduces listns() syscall that lists namespace IDs, as well as the support for opening an nsfile by a file_handle of ns ID. This patch allows specifying namespaces by ID for nsenter. For example: # nsenter --net=:7 enters init net namespace (7 for NET_NS_INIT_ID). In the rare case that a ns file name starts with a colon, prepend "./" for disambiguation. Signed-off-by: Xiao Liang configure.ac | 4 ++ meson.build | 3 ++ sys-utils/nsenter.1.adoc | 34 ++++++++-------- sys-utils/nsenter.c | 104 ++++++++++++++++++++++++++++++++++++++++++----- 4 files changed, 119 insertions(+), 26 deletions(-) commit ae8bbd3630ab9f111b9f0f09a6dd8407f8745e94 Author: Sina Abroshan Date: Sun Feb 15 12:04:17 2026 +0330 lsblk: improve error reporting for invalid device paths Differentiate stat() failures from non-block-device cases, so users get accurate errno-based error messages. Signed-off-by: Sina Abroshan misc-utils/lsblk.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) commit 9d4385e63e941b470fdc674edd1c36161379034b Author: Karel Zak Date: Tue Feb 17 12:33:58 2026 +0100 setpriv: use AppArmor LSM-specific proc interface Remove the check for /sys/kernel/security/apparmor (securityfs) before writing to the proc attr interface. The securityfs check fails in environments where AppArmor is enabled but securityfs is not mounted (e.g., containers, WSL2, embedded systems). Use the LSM-specific /proc/self/attr/apparmor/exec interface introduced in Linux 5.8 (kernel commit 6413f852ce08) which is not affected by LSM load ordering issues. Fall back to the legacy /proc/self/attr/exec for older kernels. Fixes: https://github.com/util-linux/util-linux/issues/4033 Signed-off-by: Karel Zak include/pathnames.h | 1 + sys-utils/setpriv.c | 21 +++++++++++++++------ 2 files changed, 16 insertions(+), 6 deletions(-) commit 889d454aaa10b70e6cdbca3183414ead52f0e379 Author: Karel Zak Date: Tue Feb 17 11:35:17 2026 +0100 lib/netlink: set SOCK_CLOEXEC on netlink socket Set SOCK_CLOEXEC when creating the NETLINK_ROUTE socket in ul_nl_open() to prevent the file descriptor from leaking to child processes across execv(). In agetty, the netlink socket used to monitor IP address changes for \4/\6 issue escapes was inherited by the login program, causing SELinux AVC denials (local_login_t denied read/write on getty_t's netlink_route_socket). Fixes: https://github.com/util-linux/util-linux/issues/4032 Signed-off-by: Karel Zak lib/netlink.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 8264aabcdc13d8ac2eb07c260d80ad1f44a081e5 Author: Karel Zak Date: Tue Feb 17 11:20:38 2026 +0100 libblkid: (btrfs) use BTRFS_NR_SB_LOG_ZONES and rep->zones Use the BTRFS_NR_SB_LOG_ZONES constant instead of a hardcoded 2 when calling blkdev_get_zonereport() to be consistent with the rest of the function that already uses this constant. Replace the pointer arithmetic (struct blk_zone *)(rep + 1) with the more readable rep->zones flexible array member access. Addresses: https://github.com/util-linux/util-linux/pull/3995 Signed-off-by: Karel Zak libblkid/src/superblocks/btrfs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 1afa3e0de91845905d378506e87df5b0e4bac32e Merge: 0c13ec527 d3a6660ce Author: Karel Zak Date: Tue Feb 17 11:17:50 2026 +0100 Merge branch 'master-branch-1' of https://github.com/Leefancy/util-linux * 'master-branch-1' of https://github.com/Leefancy/util-linux: blkdev: Correct zone report size calculation commit 0c13ec5273b2108ca38742879be5242f4beee7e5 Author: Karel Zak Date: Tue Feb 17 11:09:09 2026 +0100 blkid: move error checks before JSON output initialization Move the lowprobe and lookup error checks (missing device and missing search type) before the JSON writer initialization. This prevents partial JSON output being written to stdout before errx() terminates the program. Addresses: https://github.com/util-linux/util-linux/pull/4036 Signed-off-by: Karel Zak misc-utils/blkid.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) commit f2de9301d2548e25ac6f89e9229084db1cb8e0e2 Merge: f1baf9779 4bac783c9 Author: Karel Zak Date: Tue Feb 17 10:56:23 2026 +0100 Merge branch 'master' of https://github.com/aschnell/util-linux * 'master' of https://github.com/aschnell/util-linux: avoid repetitive code always use array with name in json output updated test case include device in json output and use json array when needed commit f1baf9779c1d39d9e4a0aadb167f3765662ee65a Merge: 4e57070bb 6fa828cda Author: Karel Zak Date: Tue Feb 17 10:37:02 2026 +0100 Merge branch 'PR/prlimit-nofile-error' of https://github.com/karelzak/util-linux-work * 'PR/prlimit-nofile-error' of https://github.com/karelzak/util-linux-work: prlimit: raise a nicer error message when modifying NOFILE commit 4e57070bb2e7572e221aa18e8f5b5aa5480df560 Author: Karel Zak Date: Tue Feb 17 10:32:15 2026 +0100 pager: remove stale pager_redirect() declaration The pager_redirect() function was removed in the previous commit, but its declaration in the header was left behind. Remove it. Signed-off-by: Karel Zak include/pager.h | 2 -- 1 file changed, 2 deletions(-) commit f58ad4717ba3be2f002e2d243a2b26f1f66cf355 Author: Tobias Stoeckmann Date: Mon Feb 16 21:54:24 2026 +0100 lib/pager: Drop pager_redirect The pager_redirect function was only used in dmesg. Since it is no longer used there, drop it from lib/pager.c as well. Signed-off-by: Tobias Stoeckmann lib/pager.c | 15 ++------------- 1 file changed, 2 insertions(+), 13 deletions(-) commit 5cdfffbd61689ae51fdfa3c08e6e665bd29e736a Author: Tobias Stoeckmann Date: Mon Feb 16 21:53:02 2026 +0100 dmesg: Keep error messages in parent's stderr If dmesg uses a pager, some of its error messages end up in the pager output. Use the pager only for data that is supposed to be paged and print error messages before the pager is started or after it is shut down again. Signed-off-by: Tobias Stoeckmann sys-utils/dmesg.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) commit 4bac783c9a6eac149023a22a09f73ae3ef63f286 Author: Arvin Schnell Date: Mon Feb 16 16:34:04 2026 +0100 avoid repetitive code misc-utils/blkid.c | 54 +++++++++++------------------------------------------- 1 file changed, 11 insertions(+), 43 deletions(-) commit 8f51faec7bd2236ae9857d8d62fa041e459c89ef Author: Arvin Schnell Date: Mon Feb 16 15:54:11 2026 +0100 always use array with name in json output misc-utils/blkid.c | 81 ++++++++++++++++++++++++---------- tests/expected/blkid/output-json-cache | 10 +++-- tests/expected/blkid/output-json-probe | 18 +++++--- 3 files changed, 75 insertions(+), 34 deletions(-) commit 6fa828cda7c99a3517de73ff3bb891454f653c89 Author: Karel Zak Date: Mon Feb 16 14:43:00 2026 +0100 prlimit: raise a nicer error message when modifying NOFILE When attempting to set RLIMIT_NOFILE to a value exceeding the kernel's fs.nr_open limit, prlimit(2) returns EPERM. This can mislead users into thinking they need elevated permissions, even when running as root. Add a check to detect when the requested NOFILE limit exceeds fs.nr_open and provide a clear error message indicating the actual constraint. The check is optional: if /proc/sys/fs/nr_open cannot be read (e.g., /proc not mounted), the validation is silently skipped to avoid introducing a hard dependency on /proc. The nr_open value is cached and read only once per prlimit invocation for efficiency when setting multiple limits. Addresses: https://github.com/util-linux/util-linux/issues/4017 Co-authored-by: krajpuro Signed-off-by: Karel Zak include/pathnames.h | 1 + sys-utils/prlimit.c | 16 ++++++++++++++++ 2 files changed, 17 insertions(+) commit 1a4727283332f42ed6923fe6ab6429b66fe6a301 Merge: 2d838b735 4a96a26d1 Author: Karel Zak Date: Mon Feb 16 14:21:32 2026 +0100 Merge branch 'master' of https://github.com/add-uos/util-linux * 'master' of https://github.com/add-uos/util-linux: style: convert tabs to spaces in meson.build commit 2d838b735851a1eee84a779b1d7edc7c43e5d2fe Author: Michael Trapp Date: Tue Feb 10 15:39:21 2026 +0100 libuuid: reset initial cont-clock time on service start When uuidd starts with --cont-clock enabled and reads a stale timestamp from the state file, the continuous clock logic would apply a backwards offset (default 2 hours), causing generated UUIDs to have incorrect timestamps in the past. Fix this by resetting last_clock_reg to the current time when the saved timestamp is older than the current clock. This prevents the backwards offset from being applied at service start. [kzak@redhat.com: - fix comment, add commit message] Fixes: https://github.com/util-linux/util-linux/issues/4018 Signed-off-by: Karel Zak libuuid/src/gen_uuid.c | 3 +++ 1 file changed, 3 insertions(+) commit 95c72261dfdfdf06eaf83c786907b19da2c3b650 Author: Karel Zak Date: Mon Feb 16 13:30:55 2026 +0100 blkzone: make N/A string translatable The "N/A" string for write pointer should be marked for translation to support localization, following the pattern used elsewhere in util-linux (e.g., blockdev.c). Signed-off-by: Karel Zak sys-utils/blkzone.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 3a1c87e2451016dd82728739771171abc9797820 Merge: ea2231785 b032247f4 Author: Karel Zak Date: Mon Feb 16 13:25:20 2026 +0100 Merge branch 'wilfred/blkzone-report-wptr' of https://github.com/twilfredo/util-linux * 'wilfred/blkzone-report-wptr' of https://github.com/twilfredo/util-linux: blkzone: don't show wptr when zones are full commit ea2231785c6c7feb73e61294df5ecd5366fb6896 Merge: 293c446e9 1c44486e4 Author: Karel Zak Date: Mon Feb 16 13:19:01 2026 +0100 Merge branch 'patch-26' of https://github.com/mariobl/util-linux * 'patch-26' of https://github.com/mariobl/util-linux: Fix various typos and markup in man pages Fix typo in flock.1.adoc commit 293c446e9b75a291cbc26236d0b7e07de48edea2 Author: Karel Zak Date: Mon Feb 16 11:22:12 2026 +0100 tests: add tests for column --table-header-as-columns Add test coverage for the --table-header-as-columns (-K) option added in PR #4003. Tests cover: - Basic tab-separated input with header line - CSV input with comma separator - JSON output with header-derived column names - Empty column names in header Addresses: https://github.com/util-linux/util-linux/pull/4003 Signed-off-by: Karel Zak tests/expected/column/table-header-as-columns | 3 +++ tests/expected/column/table-header-as-columns-csv | 3 +++ tests/expected/column/table-header-as-columns-empty | 2 ++ tests/expected/column/table-header-as-columns-json | 13 +++++++++++++ tests/ts/column/table | 16 ++++++++++++++++ 5 files changed, 37 insertions(+) commit e36048f52f5fd72eb2539d9cc5618636553fd578 Merge: 945fac033 603fd60dd Author: Karel Zak Date: Mon Feb 16 11:11:59 2026 +0100 Merge branch 'feat/3971' of https://github.com/echoechoin/util-linux * 'feat/3971' of https://github.com/echoechoin/util-linux: column: add bash-completion for table-header-as-columns column: add option '--table-header-as-columns' for using first line as table columns names. commit 945fac033408183d836cc81e7d29b0e7f4eb6cad Author: Karel Zak Date: Mon Feb 16 10:45:27 2026 +0100 lib/pager: Rename caught_signal to pager_caught_signal The variable name caught_signal is too generic. Rename it to pager_caught_signal to follow the existing naming convention in the file where pager-related static variables use the pager_ prefix (pager_process, pager_argv, etc.). Signed-off-by: Karel Zak lib/pager.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit f8c5fb006c1e31cbd5b7fdd89f2ae50cbc99d56c Merge: a48b49864 3d9040c08 Author: Karel Zak Date: Mon Feb 16 10:44:03 2026 +0100 Merge branch 'pager_fd' of https://github.com/stoeckmann/util-linux * 'pager_fd' of https://github.com/stoeckmann/util-linux: lib/pager: Use original stderr in pager_close lib/pager: Use pager_open/close for pager_redirect lib/pager: Clear potential stdout/stderr errors lib/pager: Flush outputs in pager_close lib/pager: Improve signal handling in pager_close commit a48b4986449de3e3216a3c28c9f09b786e6d5c24 Merge: 76d3b305f 44072df7a Author: Karel Zak Date: Mon Feb 16 10:31:34 2026 +0100 Merge branch 'pager_leak' of https://github.com/stoeckmann/util-linux * 'pager_leak' of https://github.com/stoeckmann/util-linux: lib/pager: Release resources on pager_open error commit 76d3b305f3d1ccb88a8dd854bb3831bbcd3b8d27 Author: Karel Zak Date: Mon Feb 16 10:18:56 2026 +0100 dmesg: update prepare_buffer() comment The function was renamed from process_buffer() to prepare_buffer() and no longer handles printing. Update the comment to reflect that it only reads and prepares the message buffer. Signed-off-by: Karel Zak sys-utils/dmesg.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 44e3e6f5c139e778d807a7d16fd736a5b16d461c Merge: aa2e0f145 8c1e72099 Author: Karel Zak Date: Mon Feb 16 10:16:51 2026 +0100 Merge branch 'dmesg_io_split' of https://github.com/stoeckmann/util-linux commit aa2e0f145a7178aa88f6beb09c1ded588bcbfe73 Author: Karel Zak Date: Mon Feb 16 10:04:43 2026 +0100 dmesg: improve buffer size error message Improve the error message when buffer size is too large to include the maximum allowed size. This helps users understand what the actual limit is rather than just reporting an invalid value. Before: invalid buffer size argument: '...' After: buffer size ... is too large (maximum is ...) Signed-off-by: Karel Zak sys-utils/dmesg.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) commit 915abd78a4f5cfb5c2cd89539c122dbc8f825631 Merge: 841d504b6 c673579bb Author: Karel Zak Date: Mon Feb 16 10:00:01 2026 +0100 Merge branch 'dmesg32' of https://github.com/stoeckmann/util-linux * 'dmesg32' of https://github.com/stoeckmann/util-linux: dmesg: Fix short memory allocation with 32 bit commit 841d504b64a56bea1f2b8391a99dcafa95ca7d1c Merge: 4a4eb88f2 1a9929831 Author: Karel Zak Date: Mon Feb 16 09:58:17 2026 +0100 Merge branch 'lsfd--SIOCGSKNS-based-SOCK_NETNS' of https://github.com/masatake/util-linux * 'lsfd--SIOCGSKNS-based-SOCK_NETNS' of https://github.com/masatake/util-linux: lsfd: fill SOCK.NETNS even when sock_diag netlink can't report sockets tests: (test_mkfds:netns) conditionally report EPERM when ioctl(SIOCGSKNS) fails tests: (test_mkfd::tcp-bare) new factory creating an unbound/unconnected TCP socket lsfd: add inspect_target_fd method to file_class lsfd: (refactor) make call_with_foreign_fd reusable lsfd: make pidfd for the target process available while collecting fds lsfd: (comment) update the description of sock_xinfo::netns_inode lsfd: (cosmetic) delete an empty line commit eee8450fa728623b7d51b294cff0484e6be97e94 Author: Arvin Schnell Date: Fri Feb 13 12:06:02 2026 +0100 updated test case tests/expected/blkid/output-json-cache | 1 + tests/expected/blkid/output-json-probe | 1 + 2 files changed, 2 insertions(+) commit 9034294767944181510ccc0949e9c67b33ca0fb3 Author: Arvin Schnell Date: Fri Feb 13 11:43:16 2026 +0100 include device in json output and use json array when needed misc-utils/blkid.c | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) commit b032247f48d8b6a13bf8541eb663c779e448f568 Author: Wilfred Mallawa Date: Thu Feb 12 13:02:03 2026 +1000 blkzone: don't show wptr when zones are full blkzone report displays the write pointer when zones are full, however, the writepointer value is not accurate for full zones as all zone LBAs have been written. Instead, fix this so that we show "N/A" for the writepointer field if the zone condition is full. While we are at it, extend this behavior for convetional zones instead of displaying 0 for the writepointer. Signed-off-by: Wilfred Mallawa sys-utils/blkzone.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) commit 1c44486e4cf7cf09f9ad8f0d08cb92ac48a51e0f Author: Mario Blättermann Date: Tue Feb 10 14:38:36 2026 +0100 Fix various typos and markup in man pages misc-utils/getino.1.adoc | 2 +- misc-utils/lslocks.8.adoc | 2 +- sys-utils/fallocate.1.adoc | 4 ++-- sys-utils/flock.1.adoc | 2 +- sys-utils/irqtop.1.adoc | 4 ++-- sys-utils/lsmem.1.adoc | 16 ++++++++-------- 6 files changed, 15 insertions(+), 15 deletions(-) commit d0b35723d91e6fac8dfd4c3ab1d4a95b2dc12c0f Author: Mario Blättermann Date: Tue Feb 10 12:56:32 2026 +0100 Fix typo in flock.1.adoc sys-utils/flock.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 603fd60dd101611196621e78990d03e2e39e0cbd Author: WanBingjiang Date: Fri Jan 30 20:36:57 2026 +0800 column: add bash-completion for table-header-as-columns bash-completion/column | 1 + 1 file changed, 1 insertion(+) commit 623502eef6c83a757ec3c21b5f5fb223eaa15224 Author: WanBingjiang Date: Fri Jan 30 17:28:13 2026 +0800 column: add option '--table-header-as-columns' for using first line as table columns names. text-utils/column.1.adoc | 3 +++ text-utils/column.c | 43 ++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 43 insertions(+), 3 deletions(-) commit 4a96a26d193538d1befedcacf7f8f80bded8f2a0 Author: zhanghongyuan Date: Wed Feb 4 21:42:57 2026 +0800 style: convert tabs to spaces in meson.build .editorconfig | 5 +++++ meson.build | 8 ++++---- 2 files changed, 9 insertions(+), 4 deletions(-) commit 3d9040c084c143bf9dc4f8710045cc3772571865 Author: Tobias Stoeckmann Date: Wed Feb 4 20:46:57 2026 +0100 lib/pager: Use original stderr in pager_close Having restored stdout/stderr before calling wait_for_pager allows potential error messages to be printed on terminal instead of being lost due to an already closed pipe stderr. Although dup2 closes the target descriptor, make sure that the pipe is closed even if dup2 fails. With everything in place, call exit after restoring the original signal handlers. This way, signals received between wait_for_pager and signal restoration are processed as well. A race condition exists if multiple signals are received, which would allow original handlers to be processed before exit is called, yet the overhead of properly blocking signals and unblocking them is most likely not worth the effort. Signed-off-by: Tobias Stoeckmann lib/pager.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) commit 925350164786f787015640ef2e0cc9d3397fbcda Author: Tobias Stoeckmann Date: Wed Feb 4 21:45:48 2026 +0100 lib/pager: Use pager_open/close for pager_redirect Restore original stdout/stderr for pager_redirect as well to support atexit handlers of parent which might use these descriptors. Signed-off-by: Tobias Stoeckmann lib/pager.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 44072df7a09fed719fe63d3e92bb56ca9fe19276 Author: Tobias Stoeckmann Date: Wed Feb 4 21:31:01 2026 +0100 lib/pager: Release resources on pager_open error If __setup_pager is unable to spawn a new process, close the duplicated file descriptors on error path. Also, for the sake of completeness, clear all other fields in pager_process as well. Signed-off-by: Tobias Stoeckmann lib/pager.c | 6 ++++++ 1 file changed, 6 insertions(+) commit b6816b60d9ed9ad04030b492f9bfa03ae40fc9ea Author: Tobias Stoeckmann Date: Wed Feb 4 20:42:59 2026 +0100 lib/pager: Clear potential stdout/stderr errors Clear stdout/stderr errors which might have occurred in communication with pager. Since output is flushed and file descriptors replaced, the information is meaningless. Signed-off-by: Tobias Stoeckmann lib/pager.c | 2 ++ 1 file changed, 2 insertions(+) commit d05fa7833890adca38e10e26c14e32e252e04ec0 Author: Tobias Stoeckmann Date: Wed Feb 4 20:36:48 2026 +0100 lib/pager: Flush outputs in pager_close Flush all outputs before waiting for child. This allows even outputs which do not end in a newline to be shown by pager. More importantly, it avoids output to be printed into original file descriptors which were meant for pager. Signed-off-by: Tobias Stoeckmann lib/pager.c | 2 ++ 1 file changed, 2 insertions(+) commit 6ad316b6b7a8fd87c2126984a1db42e29c999190 Author: Tobias Stoeckmann Date: Wed Feb 4 20:30:18 2026 +0100 lib/pager: Improve signal handling in pager_close During pager_close execution, incoming signals can have different effects: For one, waitpid might be called multiple times. In this case, stdout/stderr are closed two times, leading to failing system calls. Also, the original stdout/stderr can be closed by the signal handler when waitpid succeeded already and dup2 calls were performed. The signal handler erroneously tries to signal EOF to the child this way. To fix these issues, only set a flag and perform wait_for_pager exactly once. If one of these signals is received during the operation, call _exit to imitate the signal handling behavior as good as possible. Signed-off-by: Tobias Stoeckmann lib/pager.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) commit c673579bb1e327286fd7c3afb727680c5749cddc Author: Tobias Stoeckmann Date: Wed Feb 4 18:01:30 2026 +0100 dmesg: Fix short memory allocation with 32 bit The buffer size can be specified as 32 bit unsigned int with command line argument. In read_syslog_buffer, the allocation is increased by 8 bytes. This means that an unsigned integer overflow could occur, leading to less amount of memory allocated than expected. Please note that this does not lead to a security issue, just an incomplete message. Signed-off-by: Tobias Stoeckmann sys-utils/dmesg.c | 3 +++ 1 file changed, 3 insertions(+) commit 8c1e720992187d21d1a1d9aa2a07c8f8f176145f Author: Tobias Stoeckmann Date: Wed Feb 4 19:15:21 2026 +0100 dmesg: Add release_buffer function The buffer handling is properly split into three functions now: - prepare_buffer - print_buffer - release_buffer Signed-off-by: Tobias Stoeckmann sys-utils/dmesg.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) commit 962c9105aea34c9b62f2f7b447d2c93e800f94f4 Author: Tobias Stoeckmann Date: Wed Feb 4 19:01:13 2026 +0100 dmesg: Split preparing and printing of buffer Have a strict separation between preparing the buffer and printing content of buffer. This will help in further changes to more efficiently prepare output, i.e. pager setup. Signed-off-by: Tobias Stoeckmann sys-utils/dmesg.c | 37 ++++++++++++++++++++----------------- 1 file changed, 20 insertions(+), 17 deletions(-) commit 4a4eb88f263bfffeee75cfcabcb6e364ef5900a3 Merge: 642f21a80 484bdc5ca Author: Karel Zak Date: Wed Feb 4 10:50:18 2026 +0100 Merge branch 'pager_exit' of https://github.com/stoeckmann/util-linux * 'pager_exit' of https://github.com/stoeckmann/util-linux: lib/pager: Call _exit in signal handler, not raise commit 642f21a80c36a461b3febdd57e8a5128d8642181 Merge: 3fa74bb2b 5aa38c36f Author: Karel Zak Date: Wed Feb 4 10:49:59 2026 +0100 Merge branch 'pager_path' of https://github.com/stoeckmann/util-linux * 'pager_path' of https://github.com/stoeckmann/util-linux: lib/pager: Do not resolve directories with PATH commit 3fa74bb2bce0ba5769c36c4d858bdfec4864fed8 Merge: 0f056f4ca f62eeeb25 Author: Karel Zak Date: Wed Feb 4 10:49:11 2026 +0100 Merge branch 'pager_sigchld' of https://github.com/stoeckmann/util-linux * 'pager_sigchld' of https://github.com/stoeckmann/util-linux: lib/pager: Set SIGCHLD to default handling commit 0f056f4ca71cfa44694f40e5b87597b627809650 Merge: b7b85736b 59592425a Author: Karel Zak Date: Wed Feb 4 10:48:48 2026 +0100 Merge branch 'dmesg_oob' of https://github.com/stoeckmann/util-linux * 'dmesg_oob' of https://github.com/stoeckmann/util-linux: dmesg: Check if file is too large dmesg: Only check for newline if input exists dmesg: Check input length before calling strtol commit b7b85736b31ab413c32298f9260642a3ce85dc61 Merge: b28e64ff8 1c3d5d37c Author: Karel Zak Date: Wed Feb 4 10:42:38 2026 +0100 Merge branch 'zfs-unaligned-sparc' of https://github.com/ixhamza/util-linux * 'zfs-unaligned-sparc' of https://github.com/ixhamza/util-linux: libblkid: zfs: fix unaligned memory access on SPARC commit b28e64ff887cc2c59847fe69f03acba1982ef220 Merge: 330619658 5cc7b4378 Author: Karel Zak Date: Wed Feb 4 09:53:51 2026 +0100 Merge branch 'check_test_coverage' of https://github.com/cgoesche/util-linux-fork * 'check_test_coverage' of https://github.com/cgoesche/util-linux-fork: tests: search for all executable scripts in test subdirs build-sys: add a target for tools/testcoverage.sh tools: (get-options.sh) refine regex for unsupported programs to avoid false positives tools: expand relative paths provided by $top_srcdir for robustness tools: helper script to generate a test coverage report tools: (get-options.sh) ensure functionality for out-of-tree builds commit 1a99298310c7e5675d4ea45bdaf89816f8eb4d06 Author: Masatake YAMATO Date: Sun Nov 30 07:28:33 2025 +0900 lsfd: fill SOCK.NETNS even when sock_diag netlink can't report sockets lsfd could not fill SOCK.NETNS when socket netns information was not available via sock_diag netlink. Although TCP sockets support sock_diag, unbound/unconnected TCP sockets are not reported there, so SOCK.NETNS remained empty for them. lsfd already obtained socket netns information via ioctl(SIOCGSKNS) in load_fdsk_xinfo(), called from collect_file_symlink(). That information was only used to enumerate network namespaces on the target system and was not associated with socket objects. Use it to fill SOCK.NETNS. Move the netns lookup to sock_class->inspect_target_fd. The new helper get_netns_from_socket() retrieves the netns inode via ioctl(SIOCGSKNS), and sock_inspect_target_fd() stores it in sock->netns_inode. Then sock_fill_column() uses sock->netns_inode for SOCK.NETNS when present. * lsfd-cmd/sock.h (struct sock::netns_inode): new member * lsfd-cmd/lsfd.c (collect_file_symlink): stop calling load_fdsk_xinfo() * lsfd-cmd/sock-xinfo.c (load_fdsk_xinfo_cb): remove * lsfd-cmd/sock.c: add get_netns_from_socket(), sock_inspect_target_fd() and wire inspect_target_fd in sock_class; use netns_inode in sock_fill_column() for SOCK.NETNS * tests/ts/lsfd/mkfds-tcp-bare: add test case Signed-off-by: Masatake YAMATO lsfd-cmd/lsfd.c | 3 -- lsfd-cmd/lsfd.h | 1 - lsfd-cmd/sock-xinfo.c | 37 +++------------------ lsfd-cmd/sock.c | 60 ++++++++++++++++++++++++++++++++-- lsfd-cmd/sock.h | 13 ++++++++ tests/expected/lsfd/mkfds-tcp-bare | 4 +++ tests/ts/lsfd/mkfds-tcp-bare | 66 ++++++++++++++++++++++++++++++++++++++ 7 files changed, 146 insertions(+), 38 deletions(-) commit 3306196586948815af5358fc1ea3cc7c1648b16c Merge: dcdf40efe 0e1e1ad4f Author: Karel Zak Date: Wed Feb 4 09:38:59 2026 +0100 Merge branch 'master' of https://github.com/echoechoin/util-linux * 'master' of https://github.com/echoechoin/util-linux: hexdump: add fetch_more_extents to retrieve all file extents hexdump: add FIEMAP-based sparse file optimization commit 5b375501ac20244490319023025acca4ec97ea41 Author: Masatake YAMATO Date: Wed Feb 4 06:45:43 2026 +0900 tests: (test_mkfds:netns) conditionally report EPERM when ioctl(SIOCGSKNS) fails Signed-off-by: Masatake YAMATO tests/helpers/test_mkfds.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 8bb703a38424d0df6f253b3095898531f3778285 Author: Masatake YAMATO Date: Mon Feb 2 03:00:07 2026 +0900 tests: (test_mkfd::tcp-bare) new factory creating an unbound/unconnected TCP socket Signed-off-by: Masatake YAMATO tests/helpers/test_mkfds.c | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) commit b758882680564a2f8e295cb821edb686d893723d Author: Masatake YAMATO Date: Tue Dec 2 06:19:27 2025 +0900 lsfd: add inspect_target_fd method to file_class lsfd has mainly used the following information sources: * stat(2) of readlink(/proc/$pid/fd/$fd), * values in /proc/$pid/fdinfo/$fd, and * netlink diag. The new method adds a new information source, file descriptors imported from the target process. lsfd uses pidfd_getfd(2) to import the specified fd from the target process. In the inspect_target_fd method, the imported file descriptor can be used freely. For example, you can call ioctl(2) on it to obtain extra information. Signed-off-by: Masatake YAMATO lsfd-cmd/lsfd.c | 21 +++++++++++++++++++++ lsfd-cmd/lsfd.h | 8 ++++++++ lsfd-cmd/util.c | 4 ++-- 3 files changed, 31 insertions(+), 2 deletions(-) commit 5cc7b437819a92e54024b9d8b0fed06b3fc26025 Author: Christian Goeschel Ndjomouo Date: Thu Jan 29 01:47:22 2026 -0500 tests: search for all executable scripts in test subdirs Instead of looking for scripts that contain ts_init() look for all executable scripts as some of them contain helper functions with commands and long options. Signed-off-by: Christian Goeschel Ndjomouo tests/ts/losetup/losetup_functions.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) commit 29539b7f6e9c5c28596bdd6e696e8a1ec4d51f03 Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 19:13:48 2026 -0500 build-sys: add a target for tools/testcoverage.sh Signed-off-by: Christian Goeschel Ndjomouo Makefile.am | 3 +++ 1 file changed, 3 insertions(+) commit 8f4537b8a8df674a2aee1d3fc83e7af3196077bf Author: Christian Goeschel Ndjomouo Date: Sun Jan 18 15:15:38 2026 -0500 tools: (get-options.sh) refine regex for unsupported programs to avoid false positives Signed-off-by: Christian Goeschel Ndjomouo tools/get-options.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit db31873228e9be5c8970c9b853214359e37baa54 Author: Christian Goeschel Ndjomouo Date: Wed Jan 28 21:42:43 2026 -0500 tools: expand relative paths provided by $top_srcdir for robustness Signed-off-by: Christian Goeschel Ndjomouo tools/checkcompletion.sh | 4 ++-- tools/checkmanpage.sh | 4 ++-- tools/checkusage.sh | 4 ++-- tools/testcoverage.sh | 2 +- 4 files changed, 7 insertions(+), 7 deletions(-) commit d52123d5875227efb2f418dc7d021f0445b1da6b Author: Christian Goeschel Ndjomouo Date: Sun Jan 18 12:27:23 2026 -0500 tools: helper script to generate a test coverage report This script uses a heuristic approach to determine an approx. test coverage of all util-linux tools. It does this by simply looking at all the test scripts for a given tool and compares the long options seen in them with all available ones for the concerned tool. It also reports if a tool is either missing a test subdirectory in tests/ts or doesn't have any test script at all. This script is not necessarily intended to be ran for build tests but rather for code quality checks and to help util-linux developers to get a better overview of their testing infrastructure and plan accordingly for improvements. It will potentially also help in keeping the tools stable and detect regressions more efficiently. Signed-off-by: Christian Goeschel Ndjomouo tools/testcoverage.sh | 443 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 443 insertions(+) commit 0e1e1ad4f3a62e772201b213e856da3a3a5c7824 Author: WanBingjiang Date: Tue Feb 3 09:49:47 2026 +0800 hexdump: add fetch_more_extents to retrieve all file extents Add fetch_more_extents() so FIEMAP can fetch extents in batches beyond the initial fixed batch, instead of being limited to FIEMAP_EXTENTS_BATCH extents only. text-utils/hexdump-display.c | 103 +++++++++++++++++++++++++------------------ 1 file changed, 60 insertions(+), 43 deletions(-) commit 484bdc5ca6c4b1b80ae03b24142f65e8efa5e95b Author: Tobias Stoeckmann Date: Mon Feb 2 21:21:07 2026 +0100 lib/pager: Call _exit in signal handler, not raise The signals are registered without SA_RESETHAND, which means that the same signal handler is called over and over again. This just works because eventually, the waitpid call will fail, leading to a suppressed error message (because stderr is already closed) and then an _exit(EXIT_FAILURE) call. Just call _exit(EXIT_FAILURE) directly to avoid unneeded and failing system calls. Signed-off-by: Tobias Stoeckmann lib/pager.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 5aa38c36f80cdb7ae7bfbb1922b6fb133bad9fe6 Author: Tobias Stoeckmann Date: Mon Feb 2 20:23:45 2026 +0100 lib/pager: Do not resolve directories with PATH If PAGER contains any slash in program part, avoid resolving it with PATH environment variable. Even if it is found there (in a subdirectory), sh -c won't execute it. Signed-off-by: Tobias Stoeckmann lib/pager.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit f62eeeb2582889e5aeed1f8acca826bac272f4d8 Author: Tobias Stoeckmann Date: Mon Feb 2 20:07:35 2026 +0100 lib/pager: Set SIGCHLD to default handling If SIGCHLD is ignored, then waitpid might return an error if child process is already terminated, since zombie process generation would be blocked. Signed-off-by: Tobias Stoeckmann lib/pager.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) commit 59592425ae90aea6cb8c2cfef270145b6cf76042 Author: Tobias Stoeckmann Date: Mon Feb 2 19:47:01 2026 +0100 dmesg: Check if file is too large 32 bit systems might encounter a file which is larger than 2 GB. The current code would silently truncate the input. Exit with a proper error message instead. Add the equal check to silence compiler warnings on 64 bit systems. Signed-off-by: Tobias Stoeckmann sys-utils/dmesg.c | 2 ++ 1 file changed, 2 insertions(+) commit 4f6b555f6c1aa7eb529b162385e92e0bb9bebcb7 Author: Tobias Stoeckmann Date: Mon Feb 2 19:28:32 2026 +0100 dmesg: Only check for newline if input exists If a memory mapped file does not end with a newline, do not check for its existence. Accessing *end would lead to an out of boundary read. Signed-off-by: Tobias Stoeckmann sys-utils/dmesg.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 1540eb2aaab45d9785cd20168d0e3d3f0e280aae Author: Tobias Stoeckmann Date: Mon Feb 2 19:25:56 2026 +0100 dmesg: Check input length before calling strtol The dmesg input can be a memory mapped file, yet strtol is used to parse numbers (facility, level, and syslog timestamp). Make sure that a terminating character exists to stop strtol before reaching end. While at it, actually check if terminating character is the one we were looking for. Signed-off-by: Tobias Stoeckmann sys-utils/dmesg.c | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) commit 9d76cfb729bfe7995f7626f150f9e727636a4bd2 Author: Masatake YAMATO Date: Sun Nov 30 04:53:24 2025 +0900 lsfd: (refactor) make call_with_foreign_fd reusable Signed-off-by: Masatake YAMATO lsfd-cmd/Makemodule.am | 3 ++- lsfd-cmd/cdev.c | 22 --------------------- lsfd-cmd/lsfd.h | 6 ++++++ lsfd-cmd/meson.build | 1 + lsfd-cmd/sock-xinfo.c | 29 +++++++++++++--------------- lsfd-cmd/util.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 74 insertions(+), 39 deletions(-) commit 11d9efb9fcecda04c8198f81ead6ba8563d8aca4 Author: Masatake YAMATO Date: Mon Feb 2 01:28:17 2026 +0900 lsfd: make pidfd for the target process available while collecting fds This is a preparation change for adding inspect_target_fd method to file_class. Signed-off-by: Masatake YAMATO lsfd-cmd/lsfd.c | 27 +++++++++++++++++++-------- lsfd-cmd/lsfd.h | 1 + 2 files changed, 20 insertions(+), 8 deletions(-) commit 778e3bf89d3960371e5514a78d5a0ff40c2f7f8d Author: Masatake YAMATO Date: Tue Feb 3 02:13:47 2026 +0900 lsfd: (comment) update the description of sock_xinfo::netns_inode Signed-off-by: Masatake YAMATO lsfd-cmd/sock.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 1c3d5d37ceb55ba329e54656c741b6b562e1f04c Author: Ameer Hamza Date: Mon Feb 2 21:16:50 2026 +0500 libblkid: zfs: fix unaligned memory access on SPARC SPARC requires aligned memory access for uint32_t values. The ZFS code was directly dereferencing uint32_t pointers that could be unaligned due to XDR encoding, causing SIGBUS crashes. Introduce copy_be32_to_cpu() helper using memcpy to safely read from potentially unaligned memory. Addresses: https://github.com/util-linux/util-linux/issues/4010 Signed-off-by: Ameer Hamza libblkid/src/superblocks/zfs.c | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) commit f43ea8bbd45a8333c48ea6c30ea642fdcace0a0e Author: Masatake YAMATO Date: Mon Jan 26 08:00:27 2026 +0900 lsfd: (cosmetic) delete an empty line Signed-off-by: Masatake YAMATO lsfd-cmd/cdev.c | 1 - 1 file changed, 1 deletion(-) commit 31cc5f217f49c0712df8c357547e542df70e9641 Author: Christian Goeschel Ndjomouo Date: Wed Jan 28 21:19:33 2026 -0500 tools: (get-options.sh) ensure functionality for out-of-tree builds Signed-off-by: Christian Goeschel Ndjomouo tools/get-options.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit dcdf40efec22fc6a3eb2d41991f8fadcd78f110a Merge: 98df75c21 cc04dd58d Author: Karel Zak Date: Mon Feb 2 13:54:05 2026 +0100 Merge PR #3953: waitpid pidfd inode format support Resolved conflicts due to test directory reorganization. The waitpid test files were already moved to tests/expected/waitpid/ in a previous commit. Signed-off-by: Karel Zak commit 98df75c215e3c561570926ed5dba3aa4c1fb5801 Merge: 2c1bb35c2 d6ef492f1 Author: Karel Zak Date: Mon Feb 2 13:48:41 2026 +0100 Merge branch 'PR/chfn-version-help' of https://github.com/karelzak/util-linux-work * 'PR/chfn-version-help' of https://github.com/karelzak/util-linux-work: chfn: allow --help and --version without login.defs restrictions commit 2c1bb35c2b22542039063e8fd55c7494f14bb24f Merge: ba10de0dc 85b69477b Author: Karel Zak Date: Mon Feb 2 13:46:44 2026 +0100 Merge branch 'tests_convert_to_long_opts' of https://github.com/cgoesche/util-linux-fork * 'tests_convert_to_long_opts' of https://github.com/cgoesche/util-linux-fork: (26 commits) tests: (waitpid) use long options to improve test coverage report tests: use long options globally in test scripts tests: (setarch) use long options to improve test coverage report tests: (script) use long options to improve test coverage report tests: (rev) use long options to improve test coverage report tests: (rename) use long options to improve test coverage report tests: (mount) use long options to improve test coverage report tests: (more) use long options to improve test coverage report tests: (lsns) use long options to improve test coverage report tests: (lsmem) use long options to improve test coverage report tests: (lscpu) use long options to improve test coverage report tests: (lsclocks) use long options to improve test coverage report tests: (losetup) use long options to improve test coverage report tests: (logger) use long options to improve test coverage report tests: (ipcs) use long options to improve test coverage report tests: (ionice) use long options to improve test coverage report tests: (hexdump) use long options to improve test coverage report tests: (getopt) use long options to improve test coverage report tests: (findmnt) use long options to improve test coverage report tests: (fdisk) use long options to improve test coverage report ... commit ba10de0dc2bba3c782e3bc1efca3a8eab3372de3 Merge: 8cb13dc9a dcc516124 Author: Karel Zak Date: Mon Feb 2 13:38:18 2026 +0100 Merge branch 'issue/3980/hexdump' of https://github.com/echoechoin/util-linux * 'issue/3980/hexdump' of https://github.com/echoechoin/util-linux: hexdump: fixes Heap-buffer-overflow in rewrite_rules commit 8cb13dc9a1e9a78ff42e60b510a9d05e27821262 Merge: b950550a2 a9fbb9811 Author: Karel Zak Date: Mon Feb 2 13:33:51 2026 +0100 Merge branch 'lib_strutils_incomplete_null_term_check' of https://github.com/cgoesche/util-linux-fork * 'lib_strutils_incomplete_null_term_check' of https://github.com/cgoesche/util-linux-fork: lib: (strutils.c) fix unchecked lookahead in ul_parse_size() commit b950550a25727397334f49e59b55cdd300eb4952 Merge: 37b64e47d e467c18c7 Author: Karel Zak Date: Mon Feb 2 13:28:12 2026 +0100 Merge branch 'lsfd--ASSOC-pidfs' of https://github.com/masatake/util-linux * 'lsfd--ASSOC-pidfs' of https://github.com/masatake/util-linux: lsfd: add new association "pidfs" commit 37b64e47ddfec15e2f94f387292d725684a58617 Merge: b3a1805b8 0c681b69c Author: Karel Zak Date: Mon Feb 2 13:22:25 2026 +0100 Merge branch 'mount_manpage_grammar_mistake' of https://github.com/cgoesche/util-linux-fork * 'mount_manpage_grammar_mistake' of https://github.com/cgoesche/util-linux-fork: mount: (manpage) fix minor grammar mistakes commit b3a1805b80757786b1d80f51e6e482988ef78e32 Merge: 6ed055b1a d1b5d64be Author: Karel Zak Date: Mon Feb 2 13:21:46 2026 +0100 Merge branch 'nsenter_manpage_improve' of https://github.com/cgoesche/util-linux-fork * 'nsenter_manpage_improve' of https://github.com/cgoesche/util-linux-fork: nsenter: (manpage) fix minor grammar mistake commit 6ed055b1a3cf2205ad81d217b86ad785fc84ea52 Merge: 0a4c27676 a540dde0d Author: Karel Zak Date: Mon Feb 2 13:20:52 2026 +0100 Merge branch 'column_man_page' of https://github.com/echoechoin/util-linux * 'column_man_page' of https://github.com/echoechoin/util-linux: column doc: add missing attrubutes column doc: fix incorrect attribute: hidden commit 0a4c27676e2ff258efc3b8945058e1b13e47ecee Merge: 9d23d11de 173b1f4d2 Author: Karel Zak Date: Mon Feb 2 13:18:33 2026 +0100 Merge branch 'getino_man_page_improvements' of https://github.com/cgoesche/util-linux-fork * 'getino_man_page_improvements' of https://github.com/cgoesche/util-linux-fork: getino: (manpage) improve grammar and wording commit 9d23d11de19a3624804ceb947d56482c4d88eb9a Merge: 91a171468 edfed3471 Author: Karel Zak Date: Mon Feb 2 13:11:11 2026 +0100 Merge branch 'more_column_tests' of https://github.com/cgoesche/util-linux-fork * 'more_column_tests' of https://github.com/cgoesche/util-linux-fork: tests: (column) add more tests commit dcc5161240fe3b5c993297880432e150ff124f3b Author: WanBingjiang Date: Mon Feb 2 14:55:11 2026 +0800 hexdump: fixes Heap-buffer-overflow in rewrite_rules text-utils/hexdump-parse.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) commit a9fbb9811ab1a147a0ff576f1534966031ffc0c4 Author: Christian Goeschel Ndjomouo Date: Sun Feb 1 19:15:41 2026 -0500 lib: (strutils.c) fix unchecked lookahead in ul_parse_size() If the numeric value provided to ul_parse_size() via @str is a decimal with fractions only containing zeros, the logic fails to identify the end of the string and goes to the label 'check_suffix' and will do an unchecked lookahead (*p + 1) that will result in an out-of-bounds read. This is because the logic only checks for null-termination when a fraction has been parsed, i.e. a fraction not only containing zeros. To fix the issue, we implicitly check for null-termination when we have finished parsing the fraction. Reported-by: Yashashree Gund Signed-off-by: Christian Goeschel Ndjomouo lib/strutils.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit cc04dd58da415a092f110804311cf26b2fd57534 Author: Christian Goeschel Ndjomouo Date: Mon Jan 26 19:33:00 2026 -0500 tests: (waitpid) add tests for the pidfd inode format support Signed-off-by: Christian Goeschel Ndjomouo tests/expected/waitpid/pidfd-ino-count | 1 + tests/expected/waitpid/pidfd-ino-count.err | 1 + tests/expected/waitpid/pidfd-ino-mixed-pid-formats | 2 + .../waitpid/pidfd-ino-mixed-pid-formats.err | 1 + tests/expected/waitpid/pidfd-ino-one-pid-arg | 1 + tests/expected/waitpid/pidfd-ino-one-pid-arg.err | 1 + tests/ts/waitpid/pidfd-ino | 64 ++++++++++++++++++++++ 7 files changed, 71 insertions(+) commit 18605bf5f45294921d6e22ebb9bb6b03f191e6f4 Author: Christian Goeschel Ndjomouo Date: Mon Jan 26 19:28:41 2026 -0500 tests: (waitpid) move waitpid tests to a dedicated subdir Moving tests for waitpid(1) in tests/ts/misc to its own subdirectory, namely tests/ts/waitpid, makes it possible to add more extensive tests without cluttering tests/ts/misc and makes the directory structure more coherent. Signed-off-by: Christian Goeschel Ndjomouo tests/expected/{misc => waitpid}/waitpid-count | 0 tests/expected/{misc => waitpid}/waitpid-count.err | 0 tests/expected/{misc => waitpid}/waitpid-exited.err | 0 tests/expected/{misc => waitpid}/waitpid-normal | 0 tests/expected/{misc => waitpid}/waitpid-timeout | 0 tests/ts/{misc => waitpid}/waitpid | 0 6 files changed, 0 insertions(+), 0 deletions(-) commit 089181ebbc68e32976eaa28fa1afe15c7d74d415 Author: Christian Goeschel Ndjomouo Date: Tue Jan 13 20:37:26 2026 -0500 waitpid: (manpage) document the support for the "PID:inode" addressing format Signed-off-by: Christian Goeschel Ndjomouo misc-utils/waitpid.1.adoc | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) commit e290321825982efa8a501cddafd047d4cf66c5c3 Author: Christian Goeschel Ndjomouo Date: Mon Jan 12 13:53:36 2026 -0500 waitpid: close fd after removal from epoll interest list Signed-off-by: Christian Goeschel Ndjomouo misc-utils/waitpid.c | 1 + 1 file changed, 1 insertion(+) commit c32fd73f64360fd5d13c9e771a92ccae7158610d Author: Christian Goeschel Ndjomouo Date: Tue Jan 13 19:42:09 2026 -0500 waitpid: support 'PID:inode' process addressing format Adding support for the 'PID:inode' format to address a process ensures that waitpid(1) safely polls the status of the expected process in a race-free manner. Worthy of note is that with the addition of the getino(1) command the aforementioned task becomes trivially simple. Example: waitpid $(getino -p 123456) Signed-off-by: Christian Goeschel Ndjomouo misc-utils/waitpid.c | 39 +++++++++++++++++++++++++++++++-------- 1 file changed, 31 insertions(+), 8 deletions(-) commit aa4b4c28e94226b0a9790d1a4fbdb7d8d1365daa Author: Christian Goeschel Ndjomouo Date: Tue Jan 13 19:02:47 2026 -0500 waitpid: refactor to improve maintainability This refactor introduces 'struct waitpid_control' which is used to control the program state, e.g. option flags, to create context for internal routines that can adapt their execution flow accordingly. It has as goal to make the code easier to understand and reduces the scope of variables. It also adds 'struct process_info' which stores information on a process, specified by the PID passed on the command line, such as the PID, process file descriptor and pidfd inode number. An array of process_info is used to store information on all specified PIDs on the command line and is used to create the event poll list that is integral to the waitpid(1) logic. This refactor lays the ground work to introduce support for the 'PID:inode' process addressing format. Signed-off-by: Christian Goeschel Ndjomouo misc-utils/waitpid.c | 119 +++++++++++++++++++++++++++++---------------------- 1 file changed, 69 insertions(+), 50 deletions(-) commit 00b4753502f280d09e7426c82f4a7853fb3f95a1 Author: Christian Goeschel Ndjomouo Date: Fri Jan 9 20:53:00 2026 -0500 lib: (pidfd-utils) provide a more liberal variant of ul_get_valid_pidfd_or_err() The new function ul_get_valid_pidfd() behaves less opinionated in an error case and instead of terminating the calling process it returns an error. Signed-off-by: Christian Goeschel Ndjomouo include/pidfd-utils.h | 7 +++++++ lib/pidfd-utils.c | 40 ++++++++++++++++++++++++++++++++++------ 2 files changed, 41 insertions(+), 6 deletions(-) commit e467c18c7acaece7a871506ca699cab262c0026e Author: Masatake YAMATO Date: Sat Jan 31 05:27:02 2026 +0900 lsfd: add new association "pidfs" This new association is inspired by the getino command. Output example: $ ./lsfd --pid=1 -Q '(ASSOC == "pidfs")' COMMAND PID USER ASSOC XMODE TYPE SOURCE MNTID INODE NAME systemd 1 root pidfs ------ pidfd anon_inodefs 5 2 pid=1 comm=systemd nspid=1 Signed-off-by: Masatake YAMATO lsfd-cmd/file.c | 1 + lsfd-cmd/lsfd.c | 52 ++++++++++++++++++++++++++++ lsfd-cmd/lsfd.h | 4 ++- tests/expected/lsfd/assoc-pidfs | 4 +++ tests/ts/lsfd/assoc-pidfs | 75 +++++++++++++++++++++++++++++++++++++++++ 5 files changed, 135 insertions(+), 1 deletion(-) commit d1b5d64be6c450cc97156cfeebed01192ac6271b Author: Christian Goeschel Ndjomouo Date: Fri Jan 30 13:28:02 2026 -0500 nsenter: (manpage) fix minor grammar mistake Signed-off-by: Christian Goeschel Ndjomouo sys-utils/nsenter.1.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 0c681b69cdb1f4c016a642b2d7d7ccfe680dad61 Author: Christian Goeschel Ndjomouo Date: Fri Jan 30 13:34:17 2026 -0500 mount: (manpage) fix minor grammar mistakes Signed-off-by: Christian Goeschel Ndjomouo sys-utils/mount.8.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit a540dde0dd5e5ed24e22d2f65d8c4c2d964b61b4 Author: WanBingjiang Date: Fri Jan 30 21:32:06 2026 +0800 column doc: add missing attrubutes text-utils/column.1.adoc | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) commit cae44a9e1303a6a2769dcde30697c77e6fb48386 Author: WanBingjiang Date: Fri Jan 30 21:22:28 2026 +0800 column doc: fix incorrect attribute: hidden text-utils/column.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 03d14f5bc33d82f54578b384437101846622b958 Author: WanBingjiang Date: Fri Jan 30 13:48:24 2026 +0800 hexdump: add FIEMAP-based sparse file optimization Use Linux FIEMAP ioctl to detect sparse file holes and skip reading them. This significantly improves performance when dumping large sparse files by avoiding unnecessary disk I/O for hole regions. Key changes: - Add fiemap, in_sparse_hole, and region_end fields to struct hexdump - Use check_hole() with cached region boundaries to minimize syscalls - Only skip holes when vflag==DUP to preserve correct "*" output - Distinguish real sparse holes from duplicate data in regular files text-utils/hexdump-display.c | 187 +++++++++++++++++++++++++++++++++++++++++++ text-utils/hexdump.h | 6 ++ 2 files changed, 193 insertions(+) commit 173b1f4d21d1cda6f326bcc2569b3b591aedfe68 Author: Christian Goeschel Ndjomouo Date: Thu Jan 29 21:45:10 2026 -0500 getino: (manpage) improve grammar and wording Signed-off-by: Christian Goeschel Ndjomouo misc-utils/getino.1.adoc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 85b69477bf4f864db72d0230b6b6bb55e942f802 Author: Christian Goeschel Ndjomouo Date: Thu Jan 29 00:58:16 2026 -0500 tests: (waitpid) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/misc/waitpid | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 5bcddb87b6d792c177f6ca105a944f5a71bec7a7 Author: Christian Goeschel Ndjomouo Date: Thu Jan 29 00:03:29 2026 -0500 tests: use long options globally in test scripts Signed-off-by: Christian Goeschel Ndjomouo tests/ts/blkid/cache | 4 ++-- tests/ts/blkid/low-probe | 5 ++--- tests/ts/blkid/md-raid0-whole | 4 ++-- tests/ts/blkid/md-raid1-part | 6 +++--- tests/ts/blkid/md-raid1-whole | 4 ++-- tests/ts/blkid/offset | 2 +- tests/ts/blkid/topology | 4 ++-- tests/ts/cal/colorw | 12 ++++++------ tests/ts/fadvise/drop | 10 +++++----- tests/ts/fdisk/bsd | 16 ++++++++-------- tests/ts/findmnt/df-options | 4 ++-- tests/ts/ipcs/mk-rm-msg | 4 ++-- tests/ts/ipcs/mk-rm-sem | 16 ++++++++-------- tests/ts/losetup/losetup_functions.sh | 6 +++--- tests/ts/lsfd/mkfds-mapped-packet-socket | 2 +- tests/ts/lslocks/filter | 6 +++--- tests/ts/misc/fallocate | 2 +- tests/ts/misc/swaplabel | 4 ++-- tests/ts/sfdisk/dos | 28 ++++++++++++++-------------- tests/ts/ul/ul | 2 +- 20 files changed, 70 insertions(+), 71 deletions(-) commit 4a7506b5210f7c40050d4c41c2e70fb40337bfe9 Author: Christian Goeschel Ndjomouo Date: Fri Jan 23 15:36:35 2026 -0500 tests: (setarch) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/misc/setarch | 8 ++++---- tests/ts/setarch/show-with-pid | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) commit bea03f550a4ae2be60eda5a276f9fe961b9da498 Author: Christian Goeschel Ndjomouo Date: Fri Jan 23 15:31:41 2026 -0500 tests: (script) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/script/buffering-race | 2 +- tests/ts/script/options | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) commit 6917551a0c8ee9f0e116a0031214944a62a8c2ea Author: Christian Goeschel Ndjomouo Date: Fri Jan 23 15:27:25 2026 -0500 tests: (rev) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/misc/rev | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit ee595271ea5e98f20d8f8104f55a2c2d9310615c Author: Christian Goeschel Ndjomouo Date: Fri Jan 23 15:26:40 2026 -0500 tests: (rename) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/rename/basic | 10 +++++----- tests/ts/rename/subdir | 24 ++++++++++++------------ tests/ts/rename/symlink | 6 +++--- 3 files changed, 20 insertions(+), 20 deletions(-) commit 4fead5008c5da8dd65cbb3af6cfc24e11d706770 Author: Christian Goeschel Ndjomouo Date: Fri Jan 23 15:02:41 2026 -0500 tests: (mount) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/mount/complex | 10 +++++----- tests/ts/mount/dm-verity | 8 ++++---- tests/ts/mount/fallback | 6 +++--- tests/ts/mount/fslists | 10 +++++----- tests/ts/mount/fstab-all | 10 +++++----- tests/ts/mount/fstab-bind | 2 +- tests/ts/mount/fstab-broken | 4 ++-- tests/ts/mount/fstab-btrfs | 10 +++++----- tests/ts/mount/fstab-devname | 4 ++-- tests/ts/mount/fstab-devname2label | 2 +- tests/ts/mount/fstab-devname2uuid | 2 +- tests/ts/mount/fstab-label | 4 ++-- tests/ts/mount/fstab-label2devname | 4 ++-- tests/ts/mount/fstab-label2uuid | 4 ++-- tests/ts/mount/fstab-loop | 4 ++-- tests/ts/mount/fstab-none | 2 +- tests/ts/mount/fstab-symlink | 2 +- tests/ts/mount/fstab-uuid | 6 +++--- tests/ts/mount/fstab-uuid2devname | 4 ++-- tests/ts/mount/fstab-uuid2label | 4 ++-- tests/ts/mount/label | 2 +- tests/ts/mount/move | 2 +- tests/ts/mount/remount | 2 +- tests/ts/mount/uuid | 2 +- 24 files changed, 55 insertions(+), 55 deletions(-) commit bd24f000ad7366725aec0aea0559d1bbfa04331f Author: Christian Goeschel Ndjomouo Date: Fri Jan 23 14:43:16 2026 -0500 tests: (more) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/more/squeeze | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 5f33a395cde312ff9377570a21341922e2fa4891 Author: Christian Goeschel Ndjomouo Date: Fri Jan 23 14:12:33 2026 -0500 tests: (lsns) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/lsns/filedesc | 2 +- tests/ts/lsns/ioctl_ns | 2 +- tests/ts/lsns/netns-from-sock | 2 +- tests/ts/lsns/netnsid | 2 +- tests/ts/lsns/netnsid-for-persistent-namespaces | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) commit 2a754a004b88f467772793cdef53effc1e2f4b4a Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 22:36:51 2026 -0500 tests: (lsmem) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/expected/lsmem/lsmem-s390-zvm-6g | 22 +++++++++++++++++++ tests/expected/lsmem/lsmem-x86_64-16g | 40 ++++++++++++++++++++++++++++++++++ tests/ts/lsmem/lsmem | 37 ++++++++++++++++--------------- 3 files changed, 81 insertions(+), 18 deletions(-) commit 29326a970cca7fa544873429f3176a5b21cbc49d Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 22:25:53 2026 -0500 tests: (lscpu) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/lscpu/lscpu | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 5f1f3eb9b589f3b6c4ac53eb56e8fe20c024d3b4 Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 22:24:29 2026 -0500 tests: (lsclocks) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/misc/lsclocks | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 8f738aab06f6c2cb5d97a3e0012a0a349658ee09 Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 22:22:36 2026 -0500 tests: (losetup) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/losetup/losetup | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 435931df1dc5534f5c3905c2ac414912f0fd0cde Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 22:17:18 2026 -0500 tests: (logger) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/logger/errors | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) commit b8afd83fc844a06b0f309f8bb183c1339dce77e9 Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 22:11:42 2026 -0500 tests: (ipcs) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/ipcs/headers | 44 ++++++++++++++++++++++---------------------- tests/ts/ipcs/mk-rm-msg | 4 ++-- tests/ts/ipcs/mk-rm-shm | 4 ++-- 3 files changed, 26 insertions(+), 26 deletions(-) commit 3b83d6c262f9a1392f5a8ab43088cca130894994 Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 22:02:30 2026 -0500 tests: (ionice) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/misc/ionice | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) commit 03bb25b3e84e7856b45b44b797905d1360469ac3 Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 21:55:29 2026 -0500 tests: (hexdump) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/hexdump/format-strings | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) commit 026288003ca0096494caaa01806f85260b885571 Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 21:51:22 2026 -0500 tests: (getopt) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/getopt/options | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 6e2c852d96f30fb3b2d6c190cebe31820726386b Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 21:46:24 2026 -0500 tests: (findmnt) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/findmnt/filterQ | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) commit b9824f53e2046bdb968aaec95e6e72526b16eedd Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 21:41:17 2026 -0500 tests: (fdisk) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/fdisk/mbr-dos-mode | 2 +- tests/ts/fdisk/mbr-sort | 2 +- tests/ts/fdisk/sunlabel | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) commit c77471e2252430a8c986111d462a17c76e46974e Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 21:34:37 2026 -0500 tests: (fallocate) use long options to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/misc/fallocate | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit bec3563d1d3119aa75d86da9f7209f2be7b4975e Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 21:23:41 2026 -0500 tests: (enosys) use long options instead, to improve test coverage report Signed-off-by: Christian Goeschel Ndjomouo tests/ts/misc/enosys | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) commit 88d06428c0badf1811d73eea395445eaf81d43bb Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 20:08:57 2026 -0500 tests: (chfn) test all long options Signed-off-by: Christian Goeschel Ndjomouo tests/expected/chfn/gecos | 5 ++++- tests/ts/chfn/gecos | 4 +++- 2 files changed, 7 insertions(+), 2 deletions(-) commit 51c69d4c6c6d4c2ea28fa0d63f91f0b74d49b88e Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 19:48:12 2026 -0500 tests: (cal) use more long options to improve test coverage accuracy Signed-off-by: Christian Goeschel Ndjomouo tests/expected/cal/{jan1753-m3w => jan1753-monday} | 0 tests/ts/cal/jan1753 | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) commit 261e4fc2829cf18d1365cb4e23bf7ec29e7aaa5a Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 19:36:23 2026 -0500 tests: (blkid) use more long options to improve test coverage accuracy Signed-off-by: Christian Goeschel Ndjomouo tests/ts/blkid/cache | 4 ++-- tests/ts/blkid/dm-err | 2 +- tests/ts/blkid/topology | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) commit 88dc046fda75a28043e7b741637f29a0c0309ff4 Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 19:23:06 2026 -0500 tests: (blkdiscard) use long options to improve test coverage accuracy Signed-off-by: Christian Goeschel Ndjomouo tests/ts/blkdiscard/offsets | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit edfed3471b188ea426fc4a61a44cb721ef4e5014 Author: Christian Goeschel Ndjomouo Date: Wed Jan 21 20:52:29 2026 -0500 tests: (column) add more tests Signed-off-by: Christian Goeschel Ndjomouo tests/expected/column/table-json | 210 +++++++++++++++++++++++++++++++++ tests/expected/column/table-limit | 42 +++++++ tests/expected/column/table-use-spaces | 42 +++++++ tests/ts/column/table | 33 +++++- 4 files changed, 325 insertions(+), 2 deletions(-) commit 91a171468393c096a1edbb58abeb6d3639213970 Author: Christian Goeschel Ndjomouo Date: Thu Jan 29 08:00:29 2026 -0500 tests: (chrt) fix various shellcheck warnings Signed-off-by: Christian Goeschel Ndjomouo tests/ts/chrt/chrt | 2 +- tests/ts/chrt/chrt-non-root | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit fba400e7fdd7ed34044c184e030bb9877143d736 Author: Christian Goeschel Ndjomouo Date: Thu Jan 29 07:57:52 2026 -0500 tests: (flock) fix shellcheck warning Signed-off-by: Christian Goeschel Ndjomouo tests/ts/flock/flock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 95b273708ffbaf7f44043ab55f903625a1a8c3e6 Author: Christian Goeschel Ndjomouo Date: Thu Jan 29 07:55:48 2026 -0500 tests: (uuidd) fix various shellcheck warnings Signed-off-by: Christian Goeschel Ndjomouo tests/ts/uuidd/uuidd | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) commit f22cafca5ebe32dcfca59a36ab53ec53b2706c8c Author: Christian Goeschel Ndjomouo Date: Thu Jan 29 01:16:26 2026 -0500 tests: move schedutils tool test scripts to dedicated subdirs Signed-off-by: Christian Goeschel Ndjomouo tests/expected/{schedutils => chrt}/chrt | 0 tests/expected/{schedutils => chrt}/chrt-batch | 0 tests/expected/{schedutils => chrt}/chrt-batch-custom-slice | 0 tests/expected/{schedutils => chrt}/chrt-deadline | 0 tests/expected/{schedutils => chrt}/chrt-ext | 0 tests/expected/{schedutils => chrt}/chrt-fifo | 0 tests/expected/{schedutils => chrt}/chrt-idle | 0 tests/expected/{schedutils => chrt}/chrt-non-root-batch-vs-nice | 0 tests/expected/{schedutils => chrt}/chrt-other | 0 tests/expected/{schedutils => chrt}/chrt-other-custom-slice | 0 tests/expected/{schedutils => chrt}/chrt-rr | 0 .../{schedutils => coresched}/coresched-copy-from-child-to-parent | 0 .../coresched-copy-from-parent-to-nested-child | 0 tests/expected/{schedutils => coresched}/coresched-get-cookie-own-pid | 0 .../{schedutils => coresched}/coresched-get-cookie-parent-pid | 0 .../{schedutils => coresched}/coresched-new-child-with-new-cookie | 0 .../{schedutils => coresched}/coresched-set-cookie-parent-pid.err | 0 tests/expected/schedutils/set-cookie-parent-pid | 1 - tests/ts/{schedutils => chrt}/chrt | 0 tests/ts/{schedutils => chrt}/chrt-non-root | 0 tests/ts/{schedutils => coresched}/coresched | 4 ++-- 21 files changed, 2 insertions(+), 3 deletions(-) commit 2b591f485dd3238d4dc96773a681efe9c8c8eac7 Author: Christian Goeschel Ndjomouo Date: Thu Jan 29 00:53:02 2026 -0500 tests: move uuid* tool test scripts to dedicated subdirectories Signed-off-by: Christian Goeschel Ndjomouo tests/expected/uuidd/uuidd | 11 ++++++++++ tests/expected/uuidgen/oids | 4 ++++ tests/expected/uuidgen/uuidgen | 16 +++++++++++++++ tests/expected/uuidparse/time | 4 ++++ tests/expected/uuidparse/uuidparse | 37 ++++++++++++++++++++++++++++++++++ tests/ts/{uuid => uuidd}/uuidd | 0 tests/ts/{uuid => uuidgen}/oids | 0 tests/ts/{uuid => uuidgen}/uuidgen | 0 tests/ts/{uuid => uuidparse}/time | 0 tests/ts/{uuid => uuidparse}/uuidparse | 0 10 files changed, 72 insertions(+) commit d692c75b8315c5546e3d19772e4fe5e6b326fd90 Author: Christian Goeschel Ndjomouo Date: Sun Jan 18 12:22:36 2026 -0500 tests: move test scripts from tests/ts/misc to dedicated subdir This patch moves the test scripts in tests/ts/misc to subdirs in tests/ts for each util-linux tool. It keeps the directory structure consistent and allows to extend testing for each tool individually. It also lays the groundwork for the test coverage report helper script tools/testcoverage.sh. Signed-off-by: Christian Goeschel Ndjomouo tests/expected/{misc => bits}/bits | 0 tests/expected/{misc => bits}/bits-and | 0 tests/expected/{misc/line => bits/bits-and.err} | 0 tests/expected/{misc/mountpoint => bits/bits-and.exit_code} | 0 tests/expected/{misc => bits}/bits-binary | 0 tests/expected/bits/bits-binary.err | 0 tests/expected/bits/bits-binary.exit_code | 0 tests/expected/{misc => bits}/bits-default | 0 tests/expected/bits/bits-default.err | 0 tests/expected/bits/bits-default.exit_code | 0 tests/expected/{misc => bits}/bits-grouped-mask | 0 tests/expected/bits/bits-grouped-mask.err | 0 tests/expected/bits/bits-grouped-mask.exit_code | 0 tests/expected/{misc => bits}/bits-list | 0 tests/expected/bits/bits-list.err | 0 tests/expected/bits/bits-list.exit_code | 0 tests/expected/{misc => bits}/bits-mask | 0 tests/expected/bits/bits-mask.err | 0 tests/expected/bits/bits-mask.exit_code | 0 tests/expected/{misc => bits}/bits-not | 0 tests/expected/bits/bits-not.err | 0 tests/expected/bits/bits-not.exit_code | 0 tests/expected/{misc => bits}/bits-or | 0 tests/expected/bits/bits-or.err | 0 tests/expected/bits/bits-or.exit_code | 0 tests/expected/{misc => bits}/bits-parse-grouped-mask | 0 tests/expected/bits/bits-parse-grouped-mask.err | 0 tests/expected/bits/bits-parse-grouped-mask.exit_code | 0 tests/expected/{misc => bits}/bits-parse-mask | 0 tests/expected/bits/bits-parse-mask.err | 0 tests/expected/bits/bits-parse-mask.exit_code | 0 tests/expected/{misc => bits}/bits-parse-range | 0 tests/expected/bits/bits-parse-range.err | 0 tests/expected/bits/bits-parse-range.exit_code | 0 tests/expected/{misc => bits}/bits-stdin | 0 tests/expected/bits/bits-stdin.err | 0 tests/expected/bits/bits-stdin.exit_code | 0 tests/expected/{misc => bits}/bits-truncate | 0 tests/expected/bits/bits-truncate.err | 0 tests/expected/bits/bits-truncate.exit_code | 0 tests/expected/{misc => bits}/bits-width | 0 tests/expected/{misc => bits}/bits-width-truncate | 0 tests/expected/bits/bits-width-truncate.err | 0 tests/expected/bits/bits-width-truncate.exit_code | 0 tests/expected/bits/bits-width.err | 0 tests/expected/bits/bits-width.exit_code | 0 tests/expected/{misc => bits}/bits-xor | 0 tests/expected/bits/bits-xor.err | 0 tests/expected/bits/bits-xor.exit_code | 0 tests/expected/bits/bits.err | 0 tests/expected/bits/bits.exit_code | 0 tests/expected/{misc => enosys}/enosys-basic | 0 tests/expected/{misc => enosys}/enosys-exec | 0 tests/expected/{misc => enosys}/enosys-ioctl | 0 tests/expected/{misc => fallocate}/fallocate-alloc | 0 tests/expected/{misc => fallocate}/fallocate-dig-holes | 0 tests/expected/{misc => fallocate}/fallocate-report-data-holes | 0 tests/expected/{misc => fallocate}/fallocate-report-file-holes | 0 tests/expected/{misc => flock}/flock | 0 tests/expected/{misc => flock}/flock-exclusive | 0 tests/expected/{misc => flock}/flock-fcntl-exclusive | 0 tests/expected/{misc => flock}/flock-fcntl-fd | 0 tests/expected/{misc => flock}/flock-fcntl-no-fork | 0 tests/expected/{misc => flock}/flock-fcntl-non-block | 0 tests/expected/{misc => flock}/flock-fcntl-shared | 0 tests/expected/{misc => flock}/flock-fcntl-time-check | 0 tests/expected/{misc => flock}/flock-fcntl-timeout | 0 tests/expected/{misc => flock}/flock-fcntl-vs-flock | 0 tests/expected/{misc => flock}/flock-fd | 0 tests/expected/{misc => flock}/flock-no-fork | 0 tests/expected/{misc => flock}/flock-non-block | 0 tests/expected/{misc => flock}/flock-shared | 0 tests/expected/{misc => flock}/flock-time-check | 0 tests/expected/{misc => flock}/flock-timeout | 0 tests/expected/flock/lockfile | 0 tests/expected/flock/range-lock copy | 2 ++ tests/expected/{misc => ionice}/ionice | 0 tests/expected/{misc => ionice}/ionice.err | 0 tests/expected/line/line | 0 tests/expected/{misc => line}/line-empty-input | 0 tests/expected/{misc => line}/line-empty-input-wait-for-eof | 0 tests/expected/{misc => line}/line-large-line | 0 tests/expected/{misc => line}/line-one-call | 0 tests/expected/{misc => line}/line-text-without-eol | 0 tests/expected/{misc => line}/line-two-calls | 0 tests/expected/{misc => line}/line-wait-for-eof | 0 tests/expected/{misc => lsclocks}/lsclocks-basic | 0 tests/expected/{misc => lsclocks}/lsclocks-cpu | 0 tests/expected/{misc => lsclocks}/lsclocks-dynamic | 0 tests/expected/{misc => lsclocks}/lsclocks-rtc | 0 tests/expected/{misc => lsclocks}/lsclocks-time | 0 tests/expected/{misc => mcookie}/mcookie | 0 tests/expected/mcookie/mcookie.err | 0 tests/expected/mcookie/mcookie.exit_code | 0 tests/expected/misc/flock-fcntl | 4 ---- tests/expected/mountpoint/mountpoint | 0 tests/expected/{misc => mountpoint}/mountpoint-default | 0 tests/expected/{misc => mountpoint}/mountpoint-mutually-exclusive | 0 tests/expected/{misc => mountpoint}/mountpoint-mutually-exclusive.err | 0 tests/expected/{misc => mountpoint}/mountpoint-nofollow | 0 tests/expected/{misc => pipesz}/pipesz-exec | 0 tests/expected/{misc => pipesz}/pipesz-get-fd | 0 tests/expected/{misc => pipesz}/pipesz-get-fd-bad.err | 0 tests/expected/{misc => pipesz}/pipesz-get-file | 0 tests/expected/{misc => pipesz}/pipesz-get-file-bad.err | 0 tests/expected/{misc => pipesz}/pipesz-set-fd-bad.err | 0 tests/expected/{misc => pipesz}/pipesz-set-file-bad.err | 0 tests/expected/{misc => rev}/rev | 0 tests/expected/{misc => setarch}/setarch-options | 0 tests/expected/{misc => setarch}/setarch-options.err | 0 tests/expected/{misc => setarch}/setarch-show | 0 tests/expected/{misc => setarch}/setarch-uname26 | 0 tests/expected/{misc => setarch}/setarch-uname26-version | 0 tests/expected/{misc => setpgid}/setpgid | 0 tests/expected/{misc => setsid}/setsid | 0 tests/expected/{misc => swaplabel}/swaplabel | 0 tests/expected/{misc => swaplabel}/swaplabel.err | 0 tests/expected/{misc => waitpid}/waitpid-count | 0 tests/expected/{misc => waitpid}/waitpid-count.err | 0 tests/expected/{misc => waitpid}/waitpid-exited.err | 0 tests/expected/{misc => waitpid}/waitpid-normal | 0 tests/expected/{misc => waitpid}/waitpid-timeout | 0 tests/expected/{misc => whereis}/whereis | 0 tests/ts/{misc => bits}/bits | 0 tests/ts/{misc => enosys}/enosys | 0 tests/ts/{misc => fallocate}/fallocate | 0 tests/ts/{misc => flock}/flock | 0 tests/ts/{misc => ionice}/ionice | 0 tests/ts/{misc => line}/line | 0 tests/ts/{misc => lsclocks}/lsclocks | 0 tests/ts/{misc => mcookie}/mcookie | 0 tests/ts/{misc => mountpoint}/mountpoint | 0 tests/ts/{misc => pipesz}/pipesz | 0 tests/ts/{misc => rev}/rev | 0 tests/ts/{misc => setarch}/setarch | 0 tests/ts/{misc => setpgid}/setpgid | 0 tests/ts/{misc => setsid}/setsid | 0 tests/ts/{misc => swaplabel}/swaplabel | 0 tests/ts/{misc => waitpid}/waitpid | 0 tests/ts/{misc => whereis}/whereis | 0 140 files changed, 2 insertions(+), 4 deletions(-) commit d6ef492f12eb30b5617a64df9bb610338a677df2 Author: Karel Zak Date: Thu Jan 29 12:50:16 2026 +0100 chfn: allow --help and --version without login.defs restrictions Parse command line arguments twice: first pass handles --help and --version before restrictions are applied, second pass enforces login.defs CHFN_RESTRICT settings for field options. Signed-off-by: Karel Zak login-utils/chfn.c | 67 ++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 47 insertions(+), 20 deletions(-) commit 02ff631527f2e1a7b166c786e1900928a393d983 Author: Christian Goeschel Ndjomouo Date: Thu Jan 15 00:06:41 2026 -0500 tests: (chfn) ensure that invalid input is detected correctly Signed-off-by: Christian Goeschel Ndjomouo tests/expected/chfn/input-illegal-passwd-chars | 1 + tests/expected/chfn/input-too-long | 1 + tests/ts/chfn/input | 39 ++++++++++++++++++++++++++ 3 files changed, 41 insertions(+) commit 4ea6933bd940b00a714b85196d1a43bec7e4095d Author: Christian Goeschel Ndjomouo Date: Thu Jan 15 22:20:27 2026 -0500 chfn: improve man page Signed-off-by: Christian Goeschel Ndjomouo login-utils/chfn.1.adoc | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) commit a7f1132f00c3986ea1ca5486727a5677de8c2776 Author: Christian Goeschel Ndjomouo Date: Thu Jan 15 18:32:50 2026 -0500 chfn: make comment more accurate Signed-off-by: Christian Goeschel Ndjomouo login-utils/chfn.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit c2ff4a1a95a9a3eff33cc9e5d30aa4126b041d14 Author: Christian Goeschel Ndjomouo Date: Thu Jan 15 17:10:05 2026 -0500 chfn: fix minor grammar mistakes in comments Signed-off-by: Christian Goeschel Ndjomouo login-utils/chfn.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit f47e319e1cef5a5c392131e88a074aed3dfde426 Author: Christian Goeschel Ndjomouo Date: Wed Jan 14 23:14:21 2026 -0500 chfn: use true/false bool values for semantic clarity Signed-off-by: Christian Goeschel Ndjomouo login-utils/chfn.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) commit 2653558bdc5e9959cfc07e1c286c76a539f02619 Author: Christian Goeschel Ndjomouo Date: Wed Jan 14 00:41:14 2026 -0500 chfn: use direct equality check for semantic clarity and readability Signed-off-by: Christian Goeschel Ndjomouo login-utils/chfn.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 408504624c662c21ff4c7a3ae479e5d03cd029b7 Author: Christian Goeschel Ndjomouo Date: Tue Jan 13 23:55:30 2026 -0500 chfn: free memory before return from save_new_data() [kzak@redhat.com: - remove error message modification] Signed-off-by: Christian Goeschel Ndjomouo Signed-off-by: Karel Zak login-utils/chfn.c | 1 + 1 file changed, 1 insertion(+) commit a46e19214b9869188b840da6cd88da35afbcbbb9 Author: Christian Goeschel Ndjomouo Date: Tue Jan 13 23:45:03 2026 -0500 chfn: use null character (0) for better readability Signed-off-by: Christian Goeschel Ndjomouo login-utils/chfn.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit be128d1431c175c809ffcaaf56aa3f7d45b9e713 Author: Christian Goeschel Ndjomouo Date: Tue Jan 13 23:21:33 2026 -0500 chfn: fix typos, wording, and punctuation inconsistencies Signed-off-by: Christian Goeschel Ndjomouo login-utils/chfn.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 648edd40d9067307771beb70812b2fe0e2c18b01 Merge: 88c043833 b911b5368 Author: Karel Zak Date: Thu Jan 29 10:33:09 2026 +0100 Merge branch 'lsfd--dont-reuse-stat-buffer' of https://github.com/masatake/util-linux * 'lsfd--dont-reuse-stat-buffer' of https://github.com/masatake/util-linux: lsfd: (bugfix) do not reuse stat(2) buffer for files with identical names tests: add a helper command, test_open_twice commit b911b536828d62c661894841fcacdb34b9a07e52 Author: Masatake YAMATO Date: Fri Jan 23 01:19:09 2026 +0900 lsfd: (bugfix) do not reuse stat(2) buffer for files with identical names To reduce the number of stat(2) calls, lsfd reused the buffer returned from stat(2) when file descriptors opened files with the same name. If file descriptors open different files that happen to have the same name, lsfd may report incorrect results. In such cases, the stat(2) buffer must not be reused. The program a.out is run with a file name "D/a". It opens the file twice during its execution with an interval. Between the two open() calls, a different filesystem is mounted on "D". #include #include #include #include #include #include static void usage(const char *prog, int eval, FILE *fp) { fputs("Usage :\n", fp); fprintf(fp, " %s FILE\n", prog); exit(eval); } int main(int argc, char **argv) { const char *fname; int fd0, fd1; if (argc < 2) errx(2, "too few arguements"); if (strcmp(argv[1], "-h") == 0 || strcmp(argv[1], "--h") == 0) usage(argv[0], 0, stdout); if (argc > 2) errx(2, "too many arguements"); fname = argv[1]; printf("pid: %d\n", getpid()); fd0 = open(fname, O_RDONLY); if (fd0 < 0) err(1, "error in open \"%s\" in the first time", fname); fputs("[press RETURN to go to the next step] ", stderr); getchar(); fd1 = open(fname, O_RDONLY); if (fd1 < 0) err(1, "error in open \"%s\" in the second time", fname); fputs("[press RETURN to exit] ", stderr); getchar(); return 0; } $ mkdir D $ touch D/a $ dd if=/dev/zero of=img.xfs count=1 bs=400MB 1+0 records in 1+0 records out 400000000 bytes (400 MB, 381 MiB) copied, 0.427125 s, 936 MB/s $ mkfs.xfs img.xfs meta-data=img.xfs isize=512 agcount=4, agsize=24414 blks = sectsz=512 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=1 = reflink=1 bigtime=1 inobtcount=1 nrext64=1 = exchange=0 metadir=0 data = bsize=4096 blocks=97656, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0, ftype=1, parent=0 log =internal log bsize=4096 blocks=16384, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 = rgcount=0 rgsize=0 extents = zoned=0 start=0 reserved=0 $ sudo mount img.xfs D $ sudo touch D/a $ sudo umount D Let's see the bug. $ ./a.out D/a pid: 770257 [press RETURN to go to the next step] $ sudo mount img.xfs D (press RETURN) [press RETURN to exit] $ ./lsfd-orignal -p 770257 -Q 'FD > 2' COMMAND PID USER ASSOC XMODE TYPE SOURCE MNTID INODE NAME a.out 770257 yamato 3 r----- REG dm-3 95 30947324 /home/yamato/D/a a.out 770257 yamato 4 r----- REG dm-3 1631 30947324 /home/yamato/D/a $ stat D/a File: D/a Size: 0 Blocks: 0 IO Block: 4096 regular empty file Device: 7,10 Inode: 131 Links: 1 ... Although D/a has inode number 131, lsfd-original reports 30947324. After removing the code that reuses the stat(2) buffer, lsfd-new reports: $ ./lsfd-new -p 770257 -Q 'FD > 2' COMMAND PID USER ASSOC XMODE TYPE SOURCE MNTID INODE NAME a.out 770257 yamato 3 r----- REG dm-3 95 30947324 /home/yamato/D/a a.out 770257 yamato 4 r----- REG loop10 1631 131 /home/yamato/D/a Signed-off-by: Masatake YAMATO lsfd-cmd/lsfd.c | 13 +--- tests/commands.sh | 1 + tests/expected/lsfd/mount-over-same-path | 2 + tests/ts/lsfd/mount-over-same-path | 108 +++++++++++++++++++++++++++++++ 4 files changed, 113 insertions(+), 11 deletions(-) commit 88c0438336319cef23cb829038f5989b1e5554b3 Author: Karel Zak Date: Wed Jan 28 13:14:10 2026 +0100 AUTHORS: add copyfilerange Signed-off-by: Karel Zak AUTHORS | 1 + 1 file changed, 1 insertion(+) commit 9225397e0c66c5df5d7a0fe68444238b1fd8d1c5 Merge: 8167fafcc 5d77da96a Author: Karel Zak Date: Wed Jan 28 13:12:28 2026 +0100 Merge branch 'copyfilerange' of https://github.com/meeuw/util-linux * 'copyfilerange' of https://github.com/meeuw/util-linux: copyfilerange: new command to call copy-file-range commit 8167fafcc9d31ea12d3cd5d3d401aa4952294ba0 Merge: c55bed44f e13492cdc Author: Karel Zak Date: Wed Jan 28 13:03:59 2026 +0100 Merge branch 'maybe' of https://github.com/stoeckmann/util-linux * 'maybe' of https://github.com/stoeckmann/util-linux: Fix typos setpriv: (man) Fix grammar Documentation: Fix "maybe be" typo commit c55bed44f1f46c6ec0bef5e087c1d73d19bb52d0 Merge: f6fd79540 986188d1d Author: Karel Zak Date: Wed Jan 28 13:01:09 2026 +0100 Merge branch 'nsenter_pidfd_inode' of https://github.com/cgoesche/util-linux-fork * 'nsenter_pidfd_inode' of https://github.com/cgoesche/util-linux-fork: nsenter: support 'PID:inode' process address format commit d3a6660ce089310fdb19bdcb589655d3e5dd9823 Author: Leefancy Date: Wed Jan 28 17:02:35 2026 +0800 blkdev: Correct zone report size calculation Signed-off-by: Leefancy lib/blkdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 5d77da96a5c9c6b781bffb5433a5bb6e31afba59 Author: Dick Marinus Date: Tue Dec 2 20:51:35 2025 +0100 copyfilerange: new command to call copy-file-range This command allows you to call the copy-file range system call which performs an in-kernel copy between two files without the additional cost of transferring data from the kernel to user space and then back into the kernel. It gives filesystems an opportunity to implement "copy acceleration" techniques, such as the use of reflinks (i.e., two or more inodes that share pointers to the same copy-on-write disk blocks) or server-side-copy (in the case of NFS). A purpose of this command is to in-place deduplicate equal file blocks in two different files. When calling this command the source and destination file are required and ranges must be supplied using command line arguments or from a ranges file. A file range contains the offset in the source and destination file and the length of the range in bytes. The offsets can be omitted so that the current file pointer is used. When the size is omitted or set to zero the remainder of the file is copied. If the file range is too long to fit in SIZE_MAX subsequential calls to copy_file_range will be performed to copy the whole range. The following command will copy/reflink a file: $ copyfilerange file1 file2 0:: The following command will copy the second block from file1 into file2: $ copyfilerange file1 file2 4096:4096:4096 Signed-off-by: Dick Marinus .gitignore | 1 + bash-completion/Makemodule.am | 3 + bash-completion/copyfilerange | 29 +++ configure.ac | 10 + meson.build | 15 ++ meson_options.txt | 2 + misc-utils/Makemodule.am | 9 + misc-utils/copyfilerange.1.adoc | 98 ++++++++ misc-utils/copyfilerange.c | 275 +++++++++++++++++++++ misc-utils/meson.build | 5 + po-man/po4a.cfg | 57 ++--- tests/commands.sh | 1 + .../copyfilerange-copy-from-beyond-file-size | 1 + .../expected/copyfilerange/copyfilerange-fd-input | 1 + .../copyfilerange/copyfilerange-invalid-input | 1 + .../copyfilerange-mix-arguments-and-options | 2 + tests/expected/copyfilerange/copyfilerange-normal | 1 + .../copyfilerange-previous-offset-preserved | 1 + .../copyfilerange/copyfilerange-ranges-option | 1 + tests/expected/copyfilerange/copyfilerange-verbose | 6 + tests/ts/copyfilerange/copyfilerange | 86 +++++++ 21 files changed, 577 insertions(+), 28 deletions(-) commit e13492cdcd0f96b0a6249a0ab30f2550a25953f0 Author: Tobias Stoeckmann Date: Tue Jan 27 18:19:46 2026 +0100 Fix typos Typos found with codespell. Signed-off-by: Tobias Stoeckmann disk-utils/cfdisk.c | 2 +- include/configs.h | 4 ++-- include/mountutils.h | 2 +- include/netaddrq.h | 6 +++--- include/netlink.h | 4 ++-- lib/mbsedit.c | 2 +- lib/netaddrq.c | 8 ++++---- lib/netlink.c | 6 +++--- lib/strutils.c | 2 +- libblkid/src/superblocks/zfs.c | 6 +++--- libmount/samples/statmount.c | 2 +- libmount/src/fs.c | 8 ++++---- libmount/src/fs_statmount.c | 2 +- libmount/src/hook_veritydev.c | 2 +- libmount/src/monitor_fanotify.c | 4 ++-- libmount/src/monitor_utab.c | 2 +- libmount/src/optlist.c | 2 +- libmount/src/tab.c | 2 +- libmount/src/tab_listmount.c | 6 +++--- libuuid/src/gen_uuid.c | 2 +- login-utils/su-common.c | 2 +- misc-utils/fincore.c | 2 +- misc-utils/findmnt.c | 2 +- misc-utils/lsblk.c | 2 +- sys-utils/zramctl.c | 2 +- term-utils/agetty.c | 6 +++--- tests/expected/misc/mcookie | 2 +- tests/helpers/test_mkfds.c | 8 ++++---- tests/helpers/test_mkfds_ppoll.c | 2 +- tests/ts/kill/decode | 2 +- tests/ts/lsblk/lsblk | 2 +- tests/ts/lsfd/mkfds-cdev-tun | 2 +- tests/ts/misc/mcookie | 2 +- tests/ts/schedutils/coresched | 2 +- tools/git-tp-sync | 2 +- 35 files changed, 57 insertions(+), 57 deletions(-) commit 32d1861ec8d7239dd43966c5c4742c1fa058b469 Author: Tobias Stoeckmann Date: Tue Jan 27 18:03:01 2026 +0100 setpriv: (man) Fix grammar Signed-off-by: Tobias Stoeckmann sys-utils/setpriv.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 61223a0460a2ed881fac91c99997e81c1dc6d428 Author: Tobias Stoeckmann Date: Tue Jan 27 18:01:56 2026 +0100 Documentation: Fix "maybe be" typo No functional change. Signed-off-by: Tobias Stoeckmann sys-utils/setpriv.1.adoc | 2 +- term-utils/script.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit f6fd795409dd71f1d856cb5d307a2e22c4b4bb2d Merge: ffa45b5a8 16724407c Author: Karel Zak Date: Tue Jan 27 13:10:43 2026 +0100 Merge branch 'arm-ids' of https://github.com/mstorsjo/util-linux * 'arm-ids' of https://github.com/mstorsjo/util-linux: lscpu: Implement options for dumping ARM implementer/model name tables commit 986188d1da86fbde9d743089f4eb3f57e022707e Author: Christian Goeschel Ndjomouo Date: Sun Jan 11 23:14:18 2026 -0500 nsenter: support 'PID:inode' process address format The 'PID:inode' can be used for the --target option to uniquely identify a process in a race-free manner. Signed-off-by: Christian Goeschel Ndjomouo sys-utils/nsenter.1.adoc | 7 ++++- sys-utils/nsenter.c | 68 ++++++++++++++++++++++++++++++------------------ 2 files changed, 48 insertions(+), 27 deletions(-) commit ffa45b5a85c0d656533bd811a1777a3e7c2fa888 Merge: e8c3b3f15 0a8bd23a4 Author: Karel Zak Date: Tue Jan 27 11:37:28 2026 +0100 Merge branch 'pidutils_improve' of https://github.com/cgoesche/util-linux-fork * 'pidutils_improve' of https://github.com/cgoesche/util-linux-fork: lib: (pidutils) improve the return protocol lib: (pidutils) add a routine to parse pids and err() on failure lib: (pidutils) improve 'PID:inode' parsing logic commit e8c3b3f152ba354d446229b2221b1451469561b6 Merge: f7f39f893 008bbf43d Author: Karel Zak Date: Tue Jan 27 11:35:51 2026 +0100 Merge branch 'pager_removals' of https://github.com/stoeckmann/util-linux * 'pager_removals' of https://github.com/stoeckmann/util-linux: lib/pager: Fix typos lib/pager: Simplify wait_for_pager lib/pager: Merge wait_or_whine into wait_for_pager lib/pager: The variable need_in is always 1 lib/pager: Remove struct field `no_stdin` lib/pager: Remove struct field preexec_cb lib/pager: Remove unused define lib/pager: Remove unused struct entry `err` lib/pager: Remove unused struct field "out" commit f7f39f893c679c5b137e7185e5895a94a528f62a Merge: 09e9b0edf 46f8541f9 Author: Karel Zak Date: Tue Jan 27 11:35:07 2026 +0100 Merge branch 'PR/libpath-nonnull-check' of https://github.com/karelzak/util-linux-work * 'PR/libpath-nonnull-check' of https://github.com/karelzak/util-linux-work: lib/path: add NULL checks for path in statx and access commit 16724407c858f4d3e2d2497f758b678b644c0011 Author: Martin Storsjö Date: Fri Jan 23 00:56:56 2026 +0200 lscpu: Implement options for dumping ARM implementer/model name tables This allows extracting the contents of the tables, which itself is uncopyrightable, for use in other projects with different code licenses. bash-completion/lscpu | 2 + sys-utils/lscpu-arm.c | 105 +++++++++++++++++++++++++++++++++++++++++++++++++ sys-utils/lscpu.1.adoc | 10 +++++ sys-utils/lscpu.c | 32 +++++++++++++++ sys-utils/lscpu.h | 8 +++- 5 files changed, 156 insertions(+), 1 deletion(-) commit 09e9b0edf9279f686284be555a0690e3badf3356 Author: Christian Goeschel Ndjomouo Date: Mon Jan 26 20:14:02 2026 -0500 lsns: make the synopsis more coherent Using _namespace ID_ in the synopsis as argument definition is more coherent as it lets a user easily infer that a numeric value is required to identify a namespace. Signed-off-by: Christian Goeschel Ndjomouo sys-utils/lsns.8.adoc | 2 +- sys-utils/lsns.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 0a8bd23a42c385a3558121c4aaa8785bbc4a6f22 Author: Christian Goeschel Ndjomouo Date: Mon Jan 26 09:29:33 2026 -0500 lib: (pidutils) improve the return protocol Instead of using generic return codes, lets be more precise and return negative errno numbers and set errno accordingly, so that higher level callers can report errors more accurately. Signed-off-by: Christian Goeschel Ndjomouo lib/pidutils.c | 36 +++++++++++++++--------------------- 1 file changed, 15 insertions(+), 21 deletions(-) commit 2286e90983a4f65d29681f9e9b5941467c937abc Author: Masatake YAMATO Date: Fri Jan 23 02:56:46 2026 +0900 tests: add a helper command, test_open_twice Signed-off-by: Masatake YAMATO meson.build | 7 ++++ tests/helpers/Makemodule.am | 3 ++ tests/helpers/test_open_twice.c | 89 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 99 insertions(+) commit 6fb39c43d4fdb50621fefd11f1fdfe3cafc8b8a3 Merge: aede8a3bc f0b0df979 Author: Karel Zak Date: Mon Jan 26 11:13:31 2026 +0100 Merge branch 'spelling' of https://github.com/jwilk-forks/util-linux * 'spelling' of https://github.com/jwilk-forks/util-linux: setpriv: (man) fix typo commit aede8a3bc9a2134752d72b00f8d61926eee817c0 Author: Karel Zak Date: Mon Jan 26 10:37:49 2026 +0100 lscpu: remove duplicate ARM names, clean up names * Remove duplicate ARM core names * Remove unwanted blank characters from core names References: https://github.com/util-linux/util-linux/pull/3882 Reported-by: Martin Storsjö Signed-off-by: Karel Zak sys-utils/lscpu-arm.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) commit f0b0df9796cda8db5aa8ac472079934d24ddb9d7 Author: Jakub Wilk Date: Sat Jan 24 11:51:01 2026 +0100 setpriv: (man) fix typo Signed-off-by: Jakub Wilk sys-utils/setpriv.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 82fc20e3087a187dc787664186721d1499a6c142 Author: Christian Goeschel Ndjomouo Date: Tue Jan 13 15:18:27 2026 -0500 lib: (pidutils) add a routine to parse pids and err() on failure Signed-off-by: Christian Goeschel Ndjomouo include/pidutils.h | 1 + lib/pidutils.c | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+) commit 505d5dc68420d75f95eb12c88c5ebeda84898e2b Author: Christian Goeschel Ndjomouo Date: Wed Jan 14 09:51:58 2026 -0500 lib: (pidutils) improve 'PID:inode' parsing logic The parsing logic in ul_parse_pid_str() failed to identify invalid input when *pidstr starts with a colon ':' followed by a number (inode), and also in cases where the input does not consist of any digits. And lastly if the PID or inode is 0. Signed-off-by: Christian Goeschel Ndjomouo lib/pidutils.c | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) commit db6c2b8fe4520090f0cf903d6fae1ca24a662d87 Merge: 17b264753 e554e1078 Author: Karel Zak Date: Thu Jan 22 20:03:20 2026 +0100 Merge branch 'PR/libfdisk-EBR-gap' of https://github.com/karelzak/util-linux-work * 'PR/libfdisk-EBR-gap' of https://github.com/karelzak/util-linux-work: tests: simplify TS_DESC in fdisk/mbr-logical-ebr-gap libfdisk: remove duplicate code tests: (fdisk) make sure test_strerror avalable tests: fdisk: add regression test for missing EBR gap between logical partitions libfdisk: (dos) fix logical partition start commit e554e1078e9fa4b8551f743e36668d93472a5ecf Author: Karel Zak Date: Thu Jan 22 17:47:23 2026 +0100 tests: simplify TS_DESC in fdisk/mbr-logical-ebr-gap Signed-off-by: Karel Zak tests/ts/fdisk/mbr-logical-ebr-gap | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit aee58b605cdefa677e8b10f6b9045f3ebcbb3126 Author: Karel Zak Date: Thu Jan 22 17:44:25 2026 +0100 libfdisk: remove duplicate code References: 8b8da020f57414c90981371da71fdf32d2253ac7 Signed-off-by: Karel Zak libfdisk/src/dos.c | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) commit 88a84f68f9a232707f6eb1779b73e722bbdb0b65 Author: Karel Zak Date: Thu Jan 22 17:43:15 2026 +0100 tests: (fdisk) make sure test_strerror avalable Signed-off-by: Karel Zak tests/ts/fdisk/oddinput | 1 + 1 file changed, 1 insertion(+) commit f7a360162d738265fb04fa690e42c78b05c356aa Merge: c4fcb1133 bf3d4aeec Author: Karel Zak Date: Thu Jan 22 17:29:51 2026 +0100 Merge branch 'master' of https://github.com/martinjungblut/util-linux into PR/libfdisk-EBR-gap * 'master' of https://github.com/martinjungblut/util-linux: tests: fdisk: add regression test for missing EBR gap between logical partitions libfdisk: (dos) fix logical partition start commit 17b2647536294b6c598e9e4636cd603920183bbd Author: Masatake YAMATO Date: Thu Jan 22 23:41:54 2026 +0900 lsfd: fix dependency on errnos.h Fix a bug that I introduced in 764f1d396f. Makemodule.am listed a dependency on errnos.h for file.c, but the header is actually used by error.c. Fix the dependency to ensure correct rebuilds. Signed-off-by: Masatake YAMATO lsfd-cmd/Makemodule.am | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit c4fcb11334652f00e24ee16c2d0cf848caa4f592 Author: Karel Zak Date: Wed Jan 21 11:56:54 2026 +0100 lsfd: make sure errors array is not empty [-Werror=type-limits] lsfd-cmd/error.c: In function ‘get_errno_name’: lsfd-cmd/error.c:49:30: error: comparison of unsigned expression in ‘< 0’ is always false [-Werror=type-limits] 49 | for (size_t i = 0; i < ARRAY_SIZE(errnos); i ++) { | ^ Signed-off-by: Karel Zak lsfd-cmd/error.c | 3 +++ 1 file changed, 3 insertions(+) commit 008bbf43d30092b457bddf3e070c01ee03cd9e86 Author: Tobias Stoeckmann Date: Tue Jan 20 17:34:37 2026 +0100 lib/pager: Fix typos Signed-off-by: Tobias Stoeckmann lib/pager.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 910cb6c592835b626854f72227e34996a7652f6b Author: Tobias Stoeckmann Date: Mon Jan 19 19:35:48 2026 +0100 lib/pager: Simplify wait_for_pager Remove unneeded checks and simplify loop to make it easier to see that the function only waits until the child terminates. Signed-off-by: Tobias Stoeckmann lib/pager.c | 33 ++++++--------------------------- 1 file changed, 6 insertions(+), 27 deletions(-) commit f18ada61fafe8ddc7f054b03560fc3543e18e8b8 Author: Tobias Stoeckmann Date: Mon Jan 19 19:25:30 2026 +0100 lib/pager: Merge wait_or_whine into wait_for_pager Move code from wait_or_whine into wait_for_pager to simplify code by clarifying where values come from (pid is pager_process.pid). Also, it shows that return values are actually not used. Signed-off-by: Tobias Stoeckmann lib/pager.c | 39 ++++++++++++++++----------------------- 1 file changed, 16 insertions(+), 23 deletions(-) commit 695f8a7171479c0e06a0f342f9dddca0dc36072e Author: Tobias Stoeckmann Date: Mon Jan 19 19:18:16 2026 +0100 lib/pager: The variable need_in is always 1 Right before start_command is called, cmd->in is set to -1. Thus, need_in is always true. This makes sense, since we create a pipe for tools to print data to pager. Remove obsolete code for better readability. Signed-off-by: Tobias Stoeckmann lib/pager.c | 33 +++++++-------------------------- 1 file changed, 7 insertions(+), 26 deletions(-) commit f1ecf7b35caf7d136586d7c8e4cb13e3e49e7943 Author: Tobias Stoeckmann Date: Mon Jan 19 19:10:42 2026 +0100 lib/pager: Remove struct field `no_stdin` The struct field `no_stdin` is always false, since it's never initialized and only eventually reset to false when the whole `pager_process` is reset to 0 with a `memset` call. Since pager is supposed to read from stdin, this feature is not needed. Signed-off-by: Tobias Stoeckmann lib/pager.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) commit c4aa03eae60b0912e13fee1cc7f2ec6acbd263c5 Author: Tobias Stoeckmann Date: Mon Jan 19 19:09:07 2026 +0100 lib/pager: Remove struct field preexec_cb The struct field preexec_cb is always set to pager_preexec. Simplify the code by calling this function directly. Removes function pointer handling. Signed-off-by: Tobias Stoeckmann lib/pager.c | 40 +++++++++++++++++++--------------------- 1 file changed, 19 insertions(+), 21 deletions(-) commit 8d03bf597b8f32e36d8eda7d2a6988fcb290215b Author: Tobias Stoeckmann Date: Mon Jan 19 19:06:50 2026 +0100 lib/pager: Remove unused define The NULL_DEVICE is never used. Signed-off-by: Tobias Stoeckmann lib/pager.c | 2 -- 1 file changed, 2 deletions(-) commit ccf080224f5c8e3091502c2953b880fb621127e5 Author: Tobias Stoeckmann Date: Mon Jan 19 19:05:16 2026 +0100 lib/pager: Remove unused struct entry `err` The struct entry `err` is never used. In original source files, it is used to redirect stderr of pager. Signed-off-by: Tobias Stoeckmann lib/pager.c | 1 - 1 file changed, 1 deletion(-) commit cbf3d1839f94b532133cf35759b82a520a9a30af Author: Tobias Stoeckmann Date: Mon Jan 19 19:02:50 2026 +0100 lib/pager: Remove unused struct field "out" The struct field `out` is never set, thus always 0. Since the pager output is never redirected, this functionality stub can be removed. Signed-off-by: Tobias Stoeckmann lib/pager.c | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) commit c25b941da9606ef60308d8d882358907c788988a Merge: 0308660ee 0fbf7c4cb Author: Karel Zak Date: Tue Jan 20 15:35:37 2026 +0100 Merge branch 'PR/unshare-signals-forwarding' of https://github.com/karelzak/util-linux-work * 'PR/unshare-signals-forwarding' of https://github.com/karelzak/util-linux-work: tests: add tests for unshare --forward-signals unshare: document --forward-signals in man page unshare: implement signal forwarding when --forward-signals is used unshare: add --forward-signals option to argument parser commit 0308660ee463429c6aab79b399485000598be781 Merge: 38b64a20b 764f1d396 Author: Karel Zak Date: Tue Jan 20 15:32:21 2026 +0100 Merge branch 'lsfd--add-error-c' of https://github.com/masatake/util-linux * 'lsfd--add-error-c' of https://github.com/masatake/util-linux: lsfd: (refactor) move the error object related code to a new file lsfd: (refactor) remove redundant is_error member from struct file lsfd: (refactor) add a helper function making error file objects lsfd: remove __unused__ attr from parameters used actually lsfd: (cosmetic) adjust white spaces in column definitions commit 38b64a20ba4538815cec04f3f283b438f99a018d Merge: 223cb52c5 2863ed62d Author: Karel Zak Date: Tue Jan 20 15:23:02 2026 +0100 Merge branch 'patch-1' of https://github.com/finefoot/util-linux * 'patch-1' of https://github.com/finefoot/util-linux: runuser|su: elaborate man page regarding TIOCSTI/TIOCLINUX ioctl command injection commit 2863ed62d77bb2bae5aecc2297236d440ad21c4d Author: finefoot <33361833+finefoot@users.noreply.github.com> Date: Sun Sep 21 22:40:07 2025 +0200 runuser|su: elaborate man page regarding TIOCSTI/TIOCLINUX ioctl command injection login-utils/runuser.1.adoc | 13 +++++++++++-- login-utils/su.1.adoc | 13 ++++++++++--- 2 files changed, 21 insertions(+), 5 deletions(-) commit 764f1d396fd9084d3c5212f721a4c5d7c0a9a9cc Author: Masatake YAMATO Date: Tue Jan 20 05:38:23 2026 +0900 lsfd: (refactor) move the error object related code to a new file Signed-off-by: Masatake YAMATO lsfd-cmd/Makemodule.am | 1 + lsfd-cmd/error.c | 138 +++++++++++++++++++++++++++++++++++++++++++++++++ lsfd-cmd/file.c | 113 ---------------------------------------- lsfd-cmd/meson.build | 1 + 4 files changed, 140 insertions(+), 113 deletions(-) commit 5558469bcf546765a1b769b1547cd71e662021c7 Author: Masatake YAMATO Date: Tue Jan 20 05:22:20 2026 +0900 lsfd: (refactor) remove redundant is_error member from struct file It is possible to detect whether a file object is an error object or not from its class information. Signed-off-by: Masatake YAMATO lsfd-cmd/file.c | 23 ++++++++++++++++------- lsfd-cmd/lsfd.c | 6 +++--- lsfd-cmd/lsfd.h | 5 +++-- 3 files changed, 22 insertions(+), 12 deletions(-) commit 00fbf739ff8e497128ea6664e501293fa13eb7a3 Author: Masatake YAMATO Date: Sun Oct 12 15:58:59 2025 +0900 lsfd: (refactor) add a helper function making error file objects new_error_file_common() is the helper function. new_stat_error_file() and new_stat_error_file() use the function. Signed-off-by: Masatake YAMATO lsfd-cmd/file.c | 12 ++++++------ lsfd-cmd/lsfd.c | 37 +++++++++++++++++-------------------- 2 files changed, 23 insertions(+), 26 deletions(-) commit 584fc19e92526755513145c14a9955ddc3b94483 Author: Masatake YAMATO Date: Mon Oct 13 05:16:38 2025 +0900 lsfd: remove __unused__ attr from parameters used actually Signed-off-by: Masatake YAMATO lsfd-cmd/bdev.c | 2 +- lsfd-cmd/file.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) commit 1fedeeb2710f04cbba737bb6c3aa05d86c4abe31 Author: Masatake YAMATO Date: Mon Oct 13 05:25:05 2025 +0900 lsfd: (cosmetic) adjust white spaces in column definitions Signed-off-by: Masatake YAMATO lsfd-cmd/lsfd.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 223cb52c5d8e33304362a99277dbe09be8e4ca2c Merge: 6ba220ff7 d5848f104 Author: Karel Zak Date: Mon Jan 19 12:23:17 2026 +0100 Merge branch 'add-man-section-to-calls' of https://github.com/meeuw/util-linux * 'add-man-section-to-calls' of https://github.com/meeuw/util-linux: Add man page section to (sys)calls commit 6ba220ff7c1683428d333a48e970b68e6abcd6c6 Author: Karel Zak Date: Mon Jan 19 12:14:15 2026 +0100 autotools: use $PTHREAD_LIBS everywhere Signed-off-by: Karel Zak libblkid/src/Makemodule.am | 2 +- libfdisk/src/Makemodule.am | 2 +- libmount/src/Makemodule.am | 2 +- libuuid/src/Makemodule.am | 2 +- login-utils/Makemodule.am | 2 +- misc-utils/Makemodule.am | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) commit 6d7530e1720f2e0e792f567e0183e8ff1b7e247d Merge: f9b4d86ca d88a62e4c Author: Karel Zak Date: Mon Jan 19 12:06:46 2026 +0100 Merge branch 'fix-pthread' of https://github.com/bkuhls/util-linux * 'fix-pthread' of https://github.com/bkuhls/util-linux: autotools: optionally add libpthread to uuid.pc commit f9b4d86caa34cf8b13c134cb6ca9aaa16f4f2f2f Merge: 9808d0c9b 495c3d055 Author: Karel Zak Date: Mon Jan 19 12:03:45 2026 +0100 Merge branch 'pseudo-kiofuse' of https://github.com/Elsensee/util-linux * 'pseudo-kiofuse' of https://github.com/Elsensee/util-linux: Add fuse.kio-fuse to list of pseudo file systems commit 0fbf7c4cb5d7c694ccd8867c5474044fd75f181d Author: Kiran Rangoon Date: Fri Jan 16 12:06:48 2026 -0500 tests: add tests for unshare --forward-signals Add two test cases for the new --forward-signals option: - forward-signals: verifies SIGTERM is forwarded to child - forward-signals-kill-child: verifies compatibility with --kill-child Both tests use test_sigreceive which exits with the signal number received, confirming proper signal forwarding. Signed-off-by: Kiran Rangoon tests/expected/unshare/forward-signals | 1 + tests/expected/unshare/forward-signals-kill-child | 1 + tests/ts/unshare/forward-signals | 73 ++++++++++++++++++++++ tests/ts/unshare/forward-signals-kill-child | 74 +++++++++++++++++++++++ 4 files changed, 149 insertions(+) commit 2d23999266645504df54fb644740fe2f55ec2d61 Author: Kiran Rangoon Date: Fri Jan 16 12:06:47 2026 -0500 unshare: document --forward-signals in man page Add documentation for the new --forward-signals option, explaining its use case (graceful shutdown during reboot/system management) and interaction with the --fork option. Signed-off-by: Kiran Rangoon sys-utils/unshare.1.adoc | 13 +++++++++++++ 1 file changed, 13 insertions(+) commit cabd1830379132cf004839cbdcb16c4046774ab7 Author: Kiran Rangoon Date: Fri Jan 16 12:06:46 2026 -0500 unshare: implement signal forwarding when --forward-signals is used When --forward-signals is specified, install signal handlers for SIGTERM and SIGINT that forward these signals to the child process. This allows child processes with cleanup handlers to execute gracefully during shutdown scenarios like system reboot. Also fix waitpid() to handle EINTR properly when signals are being forwarded, ensuring the parent waits for the child to complete signal handling before exiting. Signed-off-by: Kiran Rangoon sys-utils/unshare.c | 55 +++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 51 insertions(+), 4 deletions(-) commit a7de939de477e3ca977ce25cf795f4d51ac12150 Author: Kiran Rangoon Date: Fri Jan 16 12:06:45 2026 -0500 unshare: add --forward-signals option to argument parser Add a new --forward-signals command-line option that will allow unshare to forward SIGTERM and SIGINT signals from the parent process to the forked child process. This commit adds the option parsing infrastructure but does not implement the signal forwarding logic yet. The flag defaults to 0 (disabled) to maintain backward compatibility. Signed-off-by: Kiran Rangoon bash-completion/unshare | 1 + sys-utils/unshare.c | 9 ++++++++- 2 files changed, 9 insertions(+), 1 deletion(-) commit d5848f104df6cb005268c10dcc48b81f858525d3 Author: Dick Marinus Date: Sun Jan 18 20:41:48 2026 +0100 Add man page section to (sys)calls libuuid/man/uuid_generate.3.adoc | 10 +++++----- libuuid/man/uuid_parse.3.adoc | 2 +- login-utils/runuser.1.adoc | 2 +- lsfd-cmd/lsfd.1.adoc | 4 ++-- misc-utils/fadvise.1.adoc | 2 +- misc-utils/fincore.1.adoc | 8 ++++---- misc-utils/findmnt.8.adoc | 2 +- misc-utils/lsclocks.1.adoc | 4 ++-- sys-utils/flock.1.adoc | 2 +- sys-utils/mount.8.adoc | 2 +- sys-utils/nsenter.1.adoc | 2 +- sys-utils/rtcwake.8.adoc | 2 +- sys-utils/umount.8.adoc | 2 +- term-utils/setterm.1.adoc | 2 +- 14 files changed, 23 insertions(+), 23 deletions(-) commit d88a62e4cd385e07b3cb8fb309bbb03981ea2970 Author: Bernd Kuhls Date: Fri Jan 16 23:33:34 2026 +0100 autotools: optionally add libpthread to uuid.pc Fixes https://github.com/util-linux/util-linux/issues/3210#issuecomment-3477915953 Signed-off-by: Bernd Kuhls Makefile.am | 1 + libuuid/uuid.pc.in | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) commit 9808d0c9b5f3e96027df5ba709c393b1483e9ad0 Merge: 6dbb6101f a80b2f8c4 Author: Karel Zak Date: Wed Jan 14 16:02:30 2026 +0100 Merge branch 'PR/findmnt-mounttype' of https://github.com/karelzak/util-linux-work * 'PR/findmnt-mounttype' of https://github.com/karelzak/util-linux-work: findmnt: fix misleading warning messages for ntfs3 libmount: move fstype_to_mounttype() to include/ include: rename mount-api-utils.h to mountutils.h commit a80b2f8c46dd823104b609d3cff2fd7157ec9cc2 Author: Karel Zak Date: Tue Jan 13 18:38:24 2026 +0100 findmnt: fix misleading warning messages for ntfs3 * Remap fstab aliases like "ntfs3" to "ntfs" as reported by libblkid. * Use mounttype (from --with-ntfs-mounttype=) to check if supported by the kernel rather than the type provided by libblkid. * Don't check if the kernel supports type read from filesystem if an explicit type specified in fstab. Fixes: https://github.com/util-linux/util-linux/issues/3912 Addresses: https://github.com/util-linux/util-linux/pull/3963 Signed-off-by: Karel Zak misc-utils/findmnt-verify.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) commit 46f8541f94ab02ce940cc2a6a4eec37c2d026f2b Author: Karel Zak Date: Wed Jan 14 12:12:35 2026 +0100 lib/path: add NULL checks for path in statx and access Coverity warns that *at() libc functions (faccessat, statx) have pathname marked as nonnull. Add explicit runtime NULL checks returning -EINVAL instead of using __attribute__((nonnull)) into include/path.h to maintain runtime safety for suid code. Signed-off-by: Karel Zak lib/path.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) commit 6dbb6101f2b8e28b75e0ed1020be7b459fc37108 Merge: 4cdd16166 c8634c680 Author: Karel Zak Date: Wed Jan 14 10:25:55 2026 +0100 Merge branch 'unshare_typo' of https://github.com/stoeckmann/util-linux * 'unshare_typo' of https://github.com/stoeckmann/util-linux: unshare: (man) fix grammar commit 4cdd16166801505eaae2643f4f19590b2594c278 Merge: de7973f99 6cac3fd97 Author: Karel Zak Date: Wed Jan 14 10:25:17 2026 +0100 Merge branch 'PR/blkpr-keys' of https://github.com/karelzak/util-linux-work * 'PR/blkpr-keys' of https://github.com/karelzak/util-linux-work: blkpr: fix compilation [-Werror,-Wunused-function] blkpr: Call gettext() for descriptions, clean up blkpr: add read-reservation command blkpr: add read-keys command blkpr: prepare for _IOR() ioctls commit de7973f9906da09b86f221b030ec836c1e91fd22 Author: Karel Zak Date: Wed Jan 14 10:23:03 2026 +0100 mount: (man) add link to mount.ceph(8) Suggested-by: Viacheslav Dubeyko Signed-off-by: Karel Zak sys-utils/mount.8.adoc | 1 + 1 file changed, 1 insertion(+) commit c8634c6804aadb70169c876d58c560038e50376b Author: Tobias Stoeckmann Date: Wed Jan 14 00:18:47 2026 +0100 unshare: (man) fix grammar Signed-off-by: Tobias Stoeckmann sys-utils/unshare.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 3b7170f96c043628b8a73d2fd1e1da32b1f9eb07 Author: Karel Zak Date: Tue Jan 13 18:36:39 2026 +0100 libmount: move fstype_to_mounttype() to include/ Make the workaround function globally available. Signed-off-by: Karel Zak include/mountutils.h | 26 +++++++++++++++++++++++++- libmount/src/context.c | 2 +- libmount/src/context_umount.c | 2 +- libmount/src/mountP.h | 1 - libmount/src/utils.c | 25 ------------------------- 5 files changed, 27 insertions(+), 29 deletions(-) commit f419d67de67610180fb04e64d21323ce8927d31d Author: Karel Zak Date: Tue Jan 13 18:23:33 2026 +0100 include: rename mount-api-utils.h to mountutils.h Keep the filename consistent with other header filenames. Signed-off-by: Karel Zak include/Makemodule.am | 2 +- include/{mount-api-utils.h => mountutils.h} | 6 +++--- libmount/samples/listmount.c | 2 +- libmount/samples/statmount.c | 2 +- libmount/src/context.c | 1 - libmount/src/mountP.h | 2 +- sys-utils/mountpoint.c | 2 +- tests/helpers/test_sysinfo.c | 2 +- 8 files changed, 9 insertions(+), 10 deletions(-) commit 6766bbf17ad618a6a7d35d4cffe5134da2ffe077 Merge: 7f4d5ce9b 093d21775 Author: Karel Zak Date: Tue Jan 13 15:08:44 2026 +0100 Merge branch 'lslocks--fix-oPID' of https://github.com/masatake/util-linux * 'lslocks--fix-oPID' of https://github.com/masatake/util-linux: lslocks: (bugfix) don't set rawdata in COL_PID if rawdata is null commit 7f4d5ce9b4ec4e44fbd2e6e6b8dd2e600ddbd72d Author: Karel Zak Date: Tue Jan 13 13:52:41 2026 +0100 lib/path: Ensure consistent and robust path checks Signed-off-by: Karel Zak lib/path.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) commit 6cac3fd97407776dcaf3c96aefd978e018b2ca6f Author: Karel Zak Date: Tue Jan 13 13:23:39 2026 +0100 blkpr: fix compilation [-Werror,-Wunused-function] sys-utils/blkpr.c:171:27: error: unused function 'type_to_str' [-Werror,-Wunused-function] Signed-off-by: Karel Zak sys-utils/blkpr.c | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) commit 093d21775bcaffad5850d87c6ac0a8eb8b20845b Author: Masatake YAMATO Date: Tue Jan 13 19:03:26 2026 +0900 lslocks: (bugfix) don't set rawdata in COL_PID if rawdata is null Signed-off-by: Masatake YAMATO misc-utils/lslocks.c | 2 +- tests/expected/lslocks/filter | 2 ++ tests/ts/lslocks/filter | 13 +++++++++++++ 3 files changed, 16 insertions(+), 1 deletion(-) commit 8dc1f423ad8e44ccf4c3f222a81f3ff53408b9a8 Author: Masatake YAMATO Date: Fri Jan 9 14:46:15 2026 +0900 lsfd: fill MNTID coulmn for exe, cwd, and rtd assocations Signed-off-by: Masatake YAMATO lsfd-cmd/lsfd.c | 16 ++++++-- lsfd-cmd/lsfd.h | 3 +- tests/expected/lsfd/column-mntid-nonroot | 3 ++ tests/ts/lsfd/column-mntid-nonroot | 65 ++++++++++++++++++++++++++++++++ 4 files changed, 83 insertions(+), 4 deletions(-) commit b62d56482cc9a0dbdb68c1e555c21937b2a5596b Author: Masatake YAMATO Date: Fri Jan 9 11:47:25 2026 +0900 tests: (lsfd::column-mntid) add a new case Signed-off-by: Masatake YAMATO tests/expected/lsfd/column-mntid | 2 ++ tests/ts/lsfd/column-mntid | 68 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 70 insertions(+) commit 0be33155f7a96725312d90a7fe330a7d82e910cc Author: Masatake YAMATO Date: Fri Jan 9 11:48:35 2026 +0900 tests: (test_mkfds::mmap) add "shared" paramter Signed-off-by: Masatake YAMATO tests/helpers/test_mkfds.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) commit 6b1fcee6ee46ef3ae81261bff089b29b8ff98440 Author: Masatake YAMATO Date: Fri Jan 9 06:59:56 2026 +0900 lsfd: fill MNTID coulmn for shm and mem assocations Signed-off-by: Masatake YAMATO lsfd-cmd/lsfd.c | 11 +++++++++++ lsfd-cmd/lsfd.h | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) commit 035cf61cde0286905ea454f34b4baa416933f02d Author: Masatake YAMATO Date: Fri Jan 9 14:05:44 2026 +0900 lsfd: (refactor) add has_mnt_id helper macro Signed-off-by: Masatake YAMATO lsfd-cmd/file.c | 2 +- lsfd-cmd/lsfd.h | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) commit f55c1c092add6bea2fc34e61e4b85651934c26cc Author: Masatake YAMATO Date: Fri Jan 9 06:57:45 2026 +0900 lib/path: add wrapers for statx(2) Signed-off-by: Masatake YAMATO include/path.h | 10 ++++++++++ lib/path.c | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+) commit 17c8ca7913caecd6c9e223cccc825a23deb8679d Author: Masatake YAMATO Date: Sat Jan 10 01:19:30 2026 +0900 lib/path: add __format__ attr to ul_path_v?statf() Signed-off-by: Masatake YAMATO include/path.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) commit 2e18b7a5edc784ad5e69b33d767fe8ec4867e237 Author: Masatake YAMATO Date: Fri Jan 9 12:44:00 2026 +0900 tests: (refactor) add ts_skip_config, a new helper function Signed-off-by: Masatake YAMATO tests/functions.sh | 22 +++++++++++----------- tests/ts/cal/color | 5 +---- tests/ts/cal/colorw | 5 +---- tests/ts/cal/weekarg | 5 +---- 4 files changed, 14 insertions(+), 23 deletions(-) commit 611e5ddd7ecbf855813de87d426f70751e56874b Author: Masatake YAMATO Date: Fri Jan 9 10:15:18 2026 +0900 lib/path: (cosmetic) delete the empty line at the EOF Signed-off-by: Masatake YAMATO lib/path.c | 1 - 1 file changed, 1 deletion(-) commit 3af46a303585967b1417941fa065b72aff4a2f16 Author: Masatake YAMATO Date: Fri Jan 9 11:11:53 2026 +0900 tests: (lsfd::mkfds-mmap-maksed-file) revise the description Signed-off-by: Masatake YAMATO tests/ts/lsfd/mkfds-mmap-masked-file | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit a2752fe2707a6ab6e34af0341ac23edbf5e596cb Author: Karel Zak Date: Mon Jan 12 16:27:23 2026 +0100 blkpr: Call gettext() for descriptions, clean up * Use N_() and _() macros to translate description texts. * Avoid repeating command/flag/type names in description texts. * Remove trailing line breaks; it's the caller's task to format before/after the descriptions. * Improve coding style by starting strings at the beginning of the line, enhancing maintainability (80 characters limit). * Keep "}, {" on separate lines as per our usual coding practice. Signed-off-by: Karel Zak sys-utils/blkpr.c | 160 +++++++++++++++++++++++++++++++----------------------- 1 file changed, 93 insertions(+), 67 deletions(-) commit 81a350f9fe44bfa502b773ee53dee4a681515a3d Author: Stefan Hajnoczi Date: Wed Dec 17 13:26:07 2025 -0500 blkpr: add read-reservation command The new IOC_PR_READ_RESERVATION ioctl reports the current reservation on a device. Add a command so that users can inspect the current reservation. This is useful both for troubleshooting and for recovery scenarios. Signed-off-by: Stefan Hajnoczi sys-utils/blkpr.8.adoc | 4 ++-- sys-utils/blkpr.c | 60 ++++++++++++++++++++++++++++++++++++++++++++------ 2 files changed, 55 insertions(+), 9 deletions(-) commit a55e7504bb588a910ca5afb652e4c09eaa16375c Author: Stefan Hajnoczi Date: Wed Dec 17 13:26:06 2025 -0500 blkpr: add read-keys command The new IOC_PR_READ_KEYS ioctl lists registered keys on a device. Add a command so that users can inspect keys. This is useful both for troubleshooting and for recovery scenarios. Signed-off-by: Stefan Hajnoczi sys-utils/blkpr.8.adoc | 3 ++- sys-utils/blkpr.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 1 deletion(-) commit 60e0cb106e33a84cb4f1b654754b627e916f24b8 Author: Stefan Hajnoczi Date: Wed Dec 17 13:26:05 2025 -0500 blkpr: prepare for _IOR() ioctls parse_pr_command() returns the ioctl command constant for a given command or -1 when the command is unknown. Up until now all ioctl command constants were positive, so the following check worked: if (command < 0) err(EXIT_FAILURE, _("unknown command")); The top two bits of ioctl command constants encode the direction (_IO, _IOR, _IOW, _IOWR). ioctl commands defined with _IOR have negative ioctl command constants. Explicitly check for -1 to differentiate "unknown command" from valid ioctls commands. Later commits will add ioctl commands that use _IOR. Signed-off-by: Stefan Hajnoczi sys-utils/blkpr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 52e1b17ff2d03a9cc837397388caa5ae14dce2cc Merge: 8f0c02046 9dfd32fda Author: Karel Zak Date: Mon Jan 12 14:34:30 2026 +0100 Merge branch 'env_drop' of https://github.com/stoeckmann/util-linux * 'env_drop' of https://github.com/stoeckmann/util-linux: env: ignore only invalid environment variables commit 8f0c0204630751413b31bcbc76d9cdaafcbcb18d Merge: a9d22fc97 228aee7b9 Author: Karel Zak Date: Mon Jan 12 14:17:40 2026 +0100 Merge branch 'lsblk-ul-startswith' of https://github.com/codefiles/util-linux * 'lsblk-ul-startswith' of https://github.com/codefiles/util-linux: lsblk: use ul_startswith() commit a9d22fc978a28c3737e0db96cb416530a445565a Merge: 16abcbc47 3d951dbe2 Author: Karel Zak Date: Mon Jan 12 14:15:23 2026 +0100 Merge branch 'typos' of https://github.com/stoeckmann/util-linux * 'typos' of https://github.com/stoeckmann/util-linux: Fix typos in comments commit 16abcbc4740c4125a3d33125ba1ab3ec6018f20e Merge: 7b72c5203 9acc0ca1c Author: Karel Zak Date: Mon Jan 12 14:14:51 2026 +0100 Merge branch 'login_motd_reg' of https://github.com/stoeckmann/util-linux * 'login_motd_reg' of https://github.com/stoeckmann/util-linux: login: only print regular files for motd commit 7b72c5203e8f5c8b7e5909d504ce67e34b95d8c4 Merge: a281625a4 2302a3b69 Author: Karel Zak Date: Mon Jan 12 14:13:17 2026 +0100 Merge branch 'login_sig_race' of https://github.com/stoeckmann/util-linux * 'login_sig_race' of https://github.com/stoeckmann/util-linux: login: remove signal handler before cleanup commit a281625a413ca56f9bc146108105980472f10ebb Merge: 63e4e18d3 823885370 Author: Karel Zak Date: Mon Jan 12 13:56:19 2026 +0100 Merge branch 'fdisk_signal' of https://github.com/stoeckmann/util-linux * 'fdisk_signal' of https://github.com/stoeckmann/util-linux: fdisk: make SIGINT handler signal-safe commit 63e4e18d3583ff9d28d5772ca908382286cd730c Merge: 4667b61b0 82cef6d12 Author: Karel Zak Date: Mon Jan 12 13:53:24 2026 +0100 Merge branch 'fix_non_kernel_style_func_braces' of https://github.com/cgoesche/util-linux-fork * 'fix_non_kernel_style_func_braces' of https://github.com/cgoesche/util-linux-fork: style: adapt function definitions to kernel style commit 4667b61b08c07b89f879457dbec894c591ec2b7c Merge: 691183ede 44a04e24c Author: Karel Zak Date: Mon Jan 12 13:26:23 2026 +0100 Merge branch 'systemd_lock' of https://github.com/stoeckmann/util-linux * 'systemd_lock' of https://github.com/stoeckmann/util-linux: uuidd: use locked system user account if available commit 691183ede7bafb8692602a5f9ecfb2054d8ccb6e Merge: 132fef62f a51ad9408 Author: Karel Zak Date: Mon Jan 12 13:23:32 2026 +0100 Merge branch 'avoid-ob_refcnt-when-freethreading' of https://github.com/wdconinc/util-linux * 'avoid-ob_refcnt-when-freethreading' of https://github.com/wdconinc/util-linux: fix: use Py_REFCNT macro to work with free-threaded python commit 132fef62fbdca16fe2ea8e68354979116dc3d872 Merge: 55de7cb02 1048d4720 Author: Karel Zak Date: Mon Jan 12 13:21:32 2026 +0100 Merge branch 'lslocks--Q' of https://github.com/masatake/util-linux * 'lslocks--Q' of https://github.com/masatake/util-linux: tests: (lslocks) test -Q,--filter option tests: (test_mkfds::nop) new factory just printing pid lslocks: special-case PID for filtering (skip −1) lslocks: make SIZE filterable by normalizing to bytes lslocks: implement Q, --filter option lslocks: factor out code getting and setting the data from add_scols_line lslocks: (refactor) move proc_locks to struct lslocks lslocks: (refactor) move pid_locks in main to struct lslocks lslocks: (refactor) move "tab" file static variable to struct lslocks lslocks: (refactor) add struct lslocks representing the global context lslocks: (refactor) use global bytes in get_json_type_for_column() lslocks: (refactor) add a helper function refining value returned from get_lock lslocks: (refactor) don't use redundant callback functions lslocks: (refactor) specify list_head as type instead of abusing void* lslocks: (refactor) use separate function to initialize libscols_table lslocks: (refactor) remove an unused local variable lslocks: (refactor) use narrow variable scoping for loop counters lslocks: (comment) fix grammar commit 55de7cb02c98ff4ee20bad5c75923f5ff99f523e Merge: 3b373f1c9 4d5f4bb92 Author: Karel Zak Date: Mon Jan 12 13:21:17 2026 +0100 Merge branch 'PR/fallocate-report-holes' of https://github.com/karelzak/util-linux-work * 'PR/fallocate-report-holes' of https://github.com/karelzak/util-linux-work: tests: convert fallocate to use subtests fallocate: refactor --report-holes and --dig-holes output fallocate: add --report-holes commit 228aee7b93c15e50bab09d1486a5ebb63d267c03 Author: codefiles <11915375+codefiles@users.noreply.github.com> Date: Sun Jan 11 14:54:26 2026 -0500 lsblk: use ul_startswith() misc-utils/lsblk.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) commit 3d951dbe2f4ed82bfa16130a03943ff2a29fa03a Author: Tobias Stoeckmann Date: Sat Jan 10 23:04:24 2026 +0100 Fix typos in comments No functional change. Signed-off-by: Tobias Stoeckmann login-utils/chfn.c | 2 +- sys-utils/nsenter.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 9acc0ca1c72e218962dc2b176f1ed6f665c6618b Author: Tobias Stoeckmann Date: Sat Jan 10 22:56:45 2026 +0100 login: only print regular files for motd The existing code tries to only print content of non-empty files, but does not check the target of an encountered symbolic link, which could be even something else, e.g. a fifo. Add the missing check to the motddir_filter function. Signed-off-by: Tobias Stoeckmann login-utils/login.c | 6 ++++++ 1 file changed, 6 insertions(+) commit 2302a3b69b4915472274c39be18112c71ab8ac5d Author: Tobias Stoeckmann Date: Sat Jan 10 22:37:30 2026 +0100 login: remove signal handler before cleanup Even though alarm(0) is called, another process could still send a SIGALRM signal to the login process, which could trigger a use after free for a tiny amount of time. Not able to reproduce without adding a proper sleep. Signed-off-by: Tobias Stoeckmann login-utils/login.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 44a04e24c8269b26acc218c07537d01e426b0819 Author: Tobias Stoeckmann Date: Tue Jan 6 18:14:32 2026 +0100 uuidd: use locked system user account if available Beginning with systemd 257, it is possible to fully lock a sysuser account. Do so for systems with met requirements. Older systemd versions still use unlocked accounts. Signed-off-by: Tobias Stoeckmann Makefile.am | 1 + configure.ac | 10 +++++++++- meson.build | 5 +++++ misc-utils/uuidd-sysusers.conf.in | 2 +- 4 files changed, 16 insertions(+), 2 deletions(-) commit 9dfd32fda3cc9f647cbd2beaa78153b04a03f720 Author: Tobias Stoeckmann Date: Thu Jan 8 21:55:10 2026 +0100 env: ignore only invalid environment variables Returning NULL drops the start of the currently existing linked list, effectively removing all previously added environment variables. Only ignore the invalid one, but keep the linked list available. Signed-off-by: Tobias Stoeckmann lib/env.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 823885370873313038a43649d6fceada0dc07083 Author: Tobias Stoeckmann Date: Fri Jan 9 21:05:02 2026 +0100 fdisk: make SIGINT handler signal-safe Checking debug options and calling fprintf is not signal-safe. Install a debug handler if debugging is requested and use signal-safe output in it. Signed-off-by: Tobias Stoeckmann disk-utils/fdisk.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) commit 82cef6d126716e95159b82e449c6eae301d7c578 Author: Christian Goeschel Ndjomouo Date: Thu Jan 8 22:50:23 2026 -0500 style: adapt function definitions to kernel style The util-linux project preferred coding style is based on the kernel coding-style (https://docs.kernel.org/process/coding-style.html), which explains that opening braces should be on a line on their own after the function signature. Therefore, let us adapt functions that violate this convention. Signed-off-by: Christian Goeschel Ndjomouo disk-utils/mkfs.cramfs.c | 3 ++- disk-utils/mkfs.minix.c | 36 ++++++++++++++++++--------- lib/crc64.c | 11 ++++++--- lib/netaddrq.c | 6 +++-- lib/netlink.c | 18 +++++++++----- lib/sha256.c | 3 ++- lib/strutils.c | 3 ++- lib/strv.c | 54 +++++++++++++++++++++++++++-------------- libblkid/src/fuzz.c | 3 ++- libblkid/src/partitions/atari.c | 3 ++- libmount/python/pylibmount.c | 6 +++-- libmount/src/fuzz.c | 3 ++- libuuid/src/gen_uuid.c | 3 ++- login-utils/last.c | 3 ++- login-utils/login.c | 3 ++- login-utils/sulogin.c | 3 ++- lsfd-cmd/cdev.c | 9 ++++--- sys-utils/zramctl.c | 3 ++- term-utils/agetty.c | 3 ++- 19 files changed, 117 insertions(+), 59 deletions(-) commit a51ad9408317d0896bcf839714822412f9aacef4 Author: Wouter Deconinck Date: Wed Dec 24 15:49:34 2025 -0600 fix: use Py_REFCNT macro to work with free-threaded python configure.ac | 6 ++++++ libmount/python/fs.c | 6 +++--- libmount/python/tab.c | 6 +++--- 3 files changed, 12 insertions(+), 6 deletions(-) commit 3b373f1c94e8edfb6e696a5c34b1c9795d146141 Merge: adfde8a69 8cfc7f64d Author: Karel Zak Date: Thu Jan 8 13:40:28 2026 +0100 Merge branch 'fix/chrt-man-page' of https://github.com/jan-krieg/util-linux * 'fix/chrt-man-page' of https://github.com/jan-krieg/util-linux: chrt: (man) fix note about --sched-period lower limit commit adfde8a69497feb6ba61f477b385ae5b86e8eb0f Merge: 22c136c91 aadd29107 Author: Karel Zak Date: Thu Jan 8 13:39:44 2026 +0100 Merge branch 'fix/issue_3895_take2' of https://github.com/lord2y/util-linux * 'fix/issue_3895_take2' of https://github.com/lord2y/util-linux: tests: add regression test for repeated termreduce printing tests: add libsmartcols termreduce regression helper libsmartcols: avoid cumulative width reduction during printing commit 22c136c9135b863e93515aba7674f7977b46781b Merge: cedf2cb32 5de5bf841 Author: Karel Zak Date: Thu Jan 8 13:37:06 2026 +0100 Merge branch 'setpwnam_backup' of https://github.com/stoeckmann/util-linux * 'setpwnam_backup' of https://github.com/stoeckmann/util-linux: login-utils: Use _PATH macros login-utils: Use /etc/passwd- as backup file commit cedf2cb32c7b11e24480ecb73c41a89ef5dda2d1 Merge: e972d05fb f99347f8d Author: Karel Zak Date: Thu Jan 8 13:35:43 2026 +0100 Merge branch 'feat/new_tool_getpidino' of https://github.com/cgoesche/util-linux-fork * 'feat/new_tool_getpidino' of https://github.com/cgoesche/util-linux-fork: lib: (pidfd-utils) minor correction in the ul_get_valid_pidfd_or_err() description tests: add getino tests bash-completion: add getino completions getino: new tool to print the unique pidfd or namespace inode number commit e972d05fb472f8efa85bc5fb9977c57b1b623a95 Merge: 8ec679cfb d1ae0fef9 Author: Karel Zak Date: Thu Jan 8 13:27:01 2026 +0100 Merge branch 'blkid-bcachefs-fixes' of https://github.com/himikof/util-linux * 'blkid-bcachefs-fixes' of https://github.com/himikof/util-linux: libblkid: (bcachefs) fix LABEL_SUB probing libblkid: (bcachefs) add new bcachefs_sb_member fields libblkid: (bcachefs) add members_v2 parsing support commit f99347f8d3f5a510b00440896469d286a45c404e Author: Christian Goeschel Ndjomouo Date: Sat Dec 20 20:03:57 2025 -0500 lib: (pidfd-utils) minor correction in the ul_get_valid_pidfd_or_err() description Signed-off-by: Christian Goeschel Ndjomouo lib/pidfd-utils.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit d1516be6f92b0631a1b4d8b4f9d47a7444896cad Author: Christian Goeschel Ndjomouo Date: Sat Dec 20 20:06:18 2025 -0500 tests: add getino tests Signed-off-by: Christian Goeschel Ndjomouo tests/commands.sh | 1 + tests/expected/getino/getino-invalid-pid | 1 + tests/expected/getino/getino-multiple-pids | 1 + tests/expected/getino/getino-print-pid-option | 1 + tests/expected/getino/getino-single-pid | 1 + tests/ts/getino/getino | 62 +++++++++++++++++++++++++++ 6 files changed, 67 insertions(+) commit 8726188662076f45e539023b406b02f04de16b42 Author: Christian Goeschel Ndjomouo Date: Sat Dec 20 20:01:08 2025 -0500 bash-completion: add getino completions Signed-off-by: Christian Goeschel Ndjomouo bash-completion/Makemodule.am | 3 +++ bash-completion/getino | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) commit 595d05feb4b2dc7a68f2d3921f75fbc5674d4f5d Author: Christian Goeschel Ndjomouo Date: Sat Dec 20 19:59:05 2025 -0500 getino: new tool to print the unique pidfd or namespace inode number Closes: #3837 Signed-off-by: Christian Goeschel Ndjomouo .gitignore | 1 + AUTHORS | 1 + configure.ac | 14 ++- meson.build | 17 ++++ meson_options.txt | 2 + misc-utils/Makemodule.am | 9 ++ misc-utils/getino.1.adoc | 93 ++++++++++++++++++ misc-utils/getino.c | 248 +++++++++++++++++++++++++++++++++++++++++++++++ misc-utils/meson.build | 5 + po-man/po4a.cfg | 1 + 10 files changed, 389 insertions(+), 2 deletions(-) commit 8cfc7f64d3c788aeeb9b4a7d89c337c481231a60 Author: Jan Krieg Date: Thu Jan 8 01:57:29 2026 +0100 chrt: (man) fix note about --sched-period lower limit Signed-off-by: Jan Krieg schedutils/chrt.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 5de5bf8410cde2dcbff9d8ac0cc670d4fc578655 Author: Tobias Stoeckmann Date: Wed Jan 7 17:09:03 2026 +0100 login-utils: Use _PATH macros Avoid defining own macros which could be toggled with DEBUG. Also add backup passwd file suffix to pathnames.h. Signed-off-by: Tobias Stoeckmann include/pathnames.h | 1 + login-utils/chfn.c | 1 + login-utils/setpwnam.c | 9 +++++---- login-utils/setpwnam.h | 14 -------------- login-utils/vipw.c | 12 ++++++------ 5 files changed, 13 insertions(+), 24 deletions(-) commit ea3857615df887ec9a1dbbbcca7ba89a2482cbd5 Author: Tobias Stoeckmann Date: Tue Jan 6 18:20:33 2026 +0100 login-utils: Use /etc/passwd- as backup file The name /etc/passwd- is used as backup file by shadow and systemd. Let's join the group and use /etc/passwd- instead of /etc/passwd.OLD as well. One backup file on a system is enough. Signed-off-by: Tobias Stoeckmann login-utils/setpwnam.c | 4 ++-- login-utils/vipw.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) commit d1ae0fef97da3f4db8edd040a851bd6377f7426c Author: Nikita Ofitserov Date: Mon Jan 5 01:41:43 2026 +0300 libblkid: (bcachefs) fix LABEL_SUB probing It was working only for single-device filesystems and non-hierarchical device labels before. Signed-off-by: Nikita Ofitserov libblkid/src/superblocks/bcache.c | 87 +++++++++++++++++++++++++------ tests/expected/blkid/low-probe-bcachefs-3 | 2 + 2 files changed, 72 insertions(+), 17 deletions(-) commit aadd29107c43f04a34968a23ca8ee0435acdb783 Author: Alessandro Ratti Date: Sun Dec 28 19:12:08 2025 +0100 tests: add regression test for repeated termreduce printing Add a regression test that verifies repeated printing of the same libsmartcols table produces identical output when termreduce is used. Before the fix, the effective output width would shrink on each print, resulting in progressively truncated output. The test guards against future regressions by ensuring printing remains stable across invocations. Signed-off-by: Alessandro Ratti tests/commands.sh | 1 + tests/expected/libsmartcols/termreduce-loop | 6 ++++++ tests/ts/libsmartcols/termreduce-loop | 30 +++++++++++++++++++++++++++++ 3 files changed, 37 insertions(+) commit 34ebd2a75992472d8569ea262c64a2fef45c255c Author: Alessandro Ratti Date: Sun Dec 28 19:11:08 2025 +0100 tests: add libsmartcols termreduce regression helper Add a small test helper program that creates a libsmartcols table, applies scols_table_reduce_termwidth(), and prints the table multiple times within the same process. The helper is used by regression tests to detect unintended cumulative width reduction across repeated printing. Signed-off-by: Alessandro Ratti tests/helpers/Makemodule.am | 6 +++ tests/helpers/test_scols_termreduce.c | 69 +++++++++++++++++++++++++++++++++++ 2 files changed, 75 insertions(+) commit 504456effff6740d89eb6735b4eba33e54aca3ad Author: Alessandro Ratti Date: Sun Dec 28 19:07:55 2025 +0100 libsmartcols: avoid cumulative width reduction during printing __scols_initialize_printing() applied scols_table_reduce_termwidth() by mutating table->termwidth via scols_table_set_termwidth(). When printing is performed repeatedly on the same table (e.g. in interactive applications), this causes the effective output width to shrink on each invocation, eventually truncating output. Introduce an internally computed effective output width and stop modifying termwidth during printing. All layout calculations are updated to use the derived width instead, making the printing path idempotent. No functional change is expected for single-shot printing. Addresses: https://github.com/util-linux/util-linux/issues/3895 Suggested-by: Karel Zak Signed-off-by: Alessandro Ratti libsmartcols/src/calculate.c | 61 ++++++++++++++++++++++--------------------- libsmartcols/src/print.c | 12 ++++----- libsmartcols/src/smartcolsP.h | 1 + 3 files changed, 37 insertions(+), 37 deletions(-) commit 8ec679cfb0507fa0f772d7108466964e18e00af9 Merge: db9047892 c634871f8 Author: Karel Zak Date: Wed Jan 7 11:15:37 2026 +0100 Merge branch 'gettext_macro' of https://github.com/stoeckmann/util-linux * 'gettext_macro' of https://github.com/stoeckmann/util-linux: Fix gettext macro calls commit db9047892a45c06bceb5768e7bb8c887289b9859 Author: Christian Goeschel Ndjomouo Date: Tue Jan 6 10:43:45 2026 -0500 build-sys: (gcc) ignore -Wunused-but-set-variable for bison [kzak@redhat.com: - merge two Christian's patches to make it more portable] Signed-off-by: Christian Goeschel Ndjomouo Signed-off-by: Karel Zak libsmartcols/src/filter-parser.y | 11 +++++++---- sys-utils/hwclock-parse-date.y | 11 +++++++---- 2 files changed, 14 insertions(+), 8 deletions(-) commit dbc673709d51de3bb9deab6f55ddea7374c5ce7d Author: Christian Goeschel Ndjomouo Date: Mon Jan 5 21:44:29 2026 -0500 zramctl: (manpage) add --bytes option description Signed-off-by: Christian Goeschel Ndjomouo sys-utils/zramctl.8.adoc | 3 +++ 1 file changed, 3 insertions(+) commit cf928585956e907f0979f221d2d542b89d2c0f93 Author: Christian Goeschel Ndjomouo Date: Mon Jan 5 21:42:57 2026 -0500 sfdisk: (manpage) fix option description inconsistencies Signed-off-by: Christian Goeschel Ndjomouo disk-utils/sfdisk.8.adoc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) commit eefe95f10c49cf154dd78bcc0c4f034ebdfe398b Author: Christian Goeschel Ndjomouo Date: Mon Jan 5 21:36:29 2026 -0500 setpriv: (manpage) fix typo in option description Signed-off-by: Christian Goeschel Ndjomouo sys-utils/setpriv.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit b99038cd1ac29171063cb40b02231d5dd87b9c27 Author: Christian Goeschel Ndjomouo Date: Mon Jan 5 21:35:17 2026 -0500 scriptlive: (manpage) add --command option description Signed-off-by: Christian Goeschel Ndjomouo term-utils/scriptlive.1.adoc | 3 +++ 1 file changed, 3 insertions(+) commit afd6397c1b38944d05561549e81460098eb714a2 Author: Christian Goeschel Ndjomouo Date: Mon Jan 5 21:15:38 2026 -0500 readprofile: (manpage) add --no-auto option description Signed-off-by: Christian Goeschel Ndjomouo sys-utils/readprofile.8.adoc | 3 +++ 1 file changed, 3 insertions(+) commit 32f18ef208d648a9ac9098a6ca60712a64108c04 Author: Christian Goeschel Ndjomouo Date: Mon Jan 5 21:11:51 2026 -0500 lslogins: (manpage) fix typo in option description Signed-off-by: Christian Goeschel Ndjomouo login-utils/lslogins.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit f8f1867acccf2c6cb23a9a2b719f0c8e0ebb82b6 Author: Christian Goeschel Ndjomouo Date: Mon Jan 5 21:09:57 2026 -0500 ipcrm: (manpage) add --verbose description Signed-off-by: Christian Goeschel Ndjomouo sys-utils/ipcrm.1.adoc | 3 +++ 1 file changed, 3 insertions(+) commit c063b1804211d28e448df57bb1a0fe963aaa3b50 Author: Christian Goeschel Ndjomouo Date: Mon Jan 5 21:00:57 2026 -0500 hwclock: (manpage) add --param-index description Signed-off-by: Christian Goeschel Ndjomouo sys-utils/hwclock.8.adoc | 3 +++ 1 file changed, 3 insertions(+) commit e23992f499f49753e9455eb1ec2812a5d5fd817a Author: Christian Goeschel Ndjomouo Date: Mon Jan 5 19:49:45 2026 -0500 flock: (manpage) fix typo in option description Signed-off-by: Christian Goeschel Ndjomouo sys-utils/flock.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 36e124f5d400e218ae5e1f05daea9859237f6584 Author: Christian Goeschel Ndjomouo Date: Mon Jan 5 19:48:25 2026 -0500 fdisk: (manpage) add --bytes option description Signed-off-by: Christian Goeschel Ndjomouo disk-utils/fdisk.8.adoc | 3 +++ 1 file changed, 3 insertions(+) commit 1874e2f4f7ef83a0451b91dcf9a0c58d69c48868 Author: Christian Goeschel Ndjomouo Date: Wed Dec 31 19:01:57 2025 -0500 ci: add usage message consistency check to CI CODECHECK phase Add 'make checkmanpage' to the GitHub CI CODECHECK phase. This ensures that all programs have a corresponding manpage and that said manpage have a description for each long option defined in the respective program's source code. Signed-off-by: Christian Goeschel Ndjomouo .github/workflows/cibuild.sh | 1 + 1 file changed, 1 insertion(+) commit 0a9cc0ec611651c6dbcb8b825d491b2360411822 Author: Christian Goeschel Ndjomouo Date: Wed Dec 31 18:56:22 2025 -0500 tools: verify the consistency of manpages for all programs The tools/checkmanpage.sh script ensures that all programs have a corresponding manpage as well as the integrity of all described long options in the manpage based on the respective programs source code. Signed-off-by: Christian Goeschel Ndjomouo Makefile.am | 3 ++ tools/checkmanpage.sh | 142 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 145 insertions(+) commit c634871f8fb6a1e5bf7669c20f697f47649bbb86 Author: Tobias Stoeckmann Date: Tue Jan 6 20:53:12 2026 +0100 Fix gettext macro calls Four occurrences exist in tree in which only () was used, not _(), which effectively means that these messages were never translated. Signed-off-by: Tobias Stoeckmann disk-utils/fsck.c | 4 ++-- libfdisk/src/bsd.c | 2 +- login-utils/vipw.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) commit 1ddac733bdbdacb17b3c1d45cc9e300e4cbac85f Author: Nikita Ofitserov Date: Mon Jan 5 00:54:39 2026 +0300 libblkid: (bcachefs) add new bcachefs_sb_member fields This is now in sync with bcachefs 1.34. Signed-off-by: Nikita Ofitserov libblkid/src/superblocks/bcache.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) commit fae8ed6466cf879b25e53cf3f3ca043fd0e54560 Author: Nikita Ofitserov Date: Mon Jan 5 00:44:46 2026 +0300 libblkid: (bcachefs) add members_v2 parsing support Since bcachefs 1.25, in many cases bcachefs does not write members_v1 field in the superblock, leading to UUID_SUB and FSSIZE tags missing in blkid output. Fix this by parsing the new extendable members_v2 superblock field too. Signed-off-by: Nikita Ofitserov libblkid/src/superblocks/bcache.c | 61 +++++++++++++++++++++++------ tests/expected/blkid/low-probe-bcachefs-3 | 12 ++++++ tests/ts/blkid/images-fs/bcachefs-3.img.xz | Bin 0 -> 3480 bytes 3 files changed, 62 insertions(+), 11 deletions(-) commit b3db0865d2f28704f6cbfaecd53de8bf032f917e Author: Karel Zak Date: Tue Jan 6 13:37:01 2026 +0100 mount: (man) add hint for session= on iso9660 Fixes: https://github.com/util-linux/util-linux/issues/3940 Signed-off-by: Karel Zak sys-utils/mount.8.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 2de0133909f6cb9ffc214993c3ffda877298d6cd Author: Karel Zak Date: Tue Jan 6 13:32:03 2026 +0100 editorconfig: add .sh setting Suggested-by: Masatake YAMATO Signed-off-by: Karel Zak .editorconfig | 6 ++++++ 1 file changed, 6 insertions(+) commit 10ebbf7305d1fe79bdfdbdfb91d3db030b618fde Merge: 04e45703a 6f6f8d595 Author: Karel Zak Date: Tue Jan 6 12:27:58 2026 +0100 Merge branch 'setpwnam' of https://github.com/stoeckmann/util-linux * 'setpwnam' of https://github.com/stoeckmann/util-linux: setpwnam: use getline instead of fgets setpwnam: only unlock when actually locked setpwnam: check if /etc/passwd was fully read commit 495c3d0551914302f632222ff1715e2d1288b482 Author: Oliver Schramm Date: Mon Jan 5 17:36:06 2026 +0100 Add fuse.kio-fuse to list of pseudo file systems Signed-off-by: Oliver Schramm libmount/src/utils.c | 1 + 1 file changed, 1 insertion(+) commit 04e45703ab04e2cb01733373faa2c6cd0cec83fd Merge: 9c360d89c f27fa20af Author: Karel Zak Date: Mon Jan 5 12:47:45 2026 +0100 Merge branch 'pwdutils_typo' of https://github.com/stoeckmann/util-linux * 'pwdutils_typo' of https://github.com/stoeckmann/util-linux: pwdutils: fix grammar in comments commit 9c360d89cdaca819650c7696f5ead97f5f4c5d78 Merge: c294bc4aa ab37ee449 Author: Karel Zak Date: Mon Jan 5 12:47:11 2026 +0100 Merge branch 'chsh_chfn_man' of https://github.com/stoeckmann/util-linux * 'chsh_chfn_man' of https://github.com/stoeckmann/util-linux: login: Add UID to usage message login-utils/login: Sync usage with manual page login-utils: add UIDs to manual pages chsh: extend usage message commit c294bc4aa1e71ff369bcf16ebe963872271a98b6 Merge: 2718e31af 4137fb87a Author: Karel Zak Date: Mon Jan 5 12:41:08 2026 +0100 Merge branch 'fix_coding_style' of https://github.com/cgoesche/util-linux-fork * 'fix_coding_style' of https://github.com/cgoesche/util-linux-fork: style: fix coding style issues commit 2718e31af600b4903f8bd94fc289a95c3a3ee9fd Merge: 751550d3b 9d392f11a Author: Karel Zak Date: Mon Jan 5 12:39:54 2026 +0100 Merge branch 'PR/pre-1970-UUIDv1' of https://github.com/t-8ch/util-linux * 'PR/pre-1970-UUIDv1' of https://github.com/t-8ch/util-linux: tests: correct UUID timestamp test expectations libuuid: fix timestamp overflow for pre-1970 dates libuuid: refactor gregorian_to_unix to populate timeval directly libuuid: simplify gregorian-to-unix offset calculation commit 751550d3b4bbdb090da57d626d133e237c899974 Merge: 095691a33 8832034de Author: Karel Zak Date: Mon Jan 5 12:36:35 2026 +0100 Merge branch 'master' of https://github.com/higuoxing/util-linux * 'master' of https://github.com/higuoxing/util-linux: rfkill: Output in JSON format if -J is provided. commit 095691a33c2f6c096e158026b53ea27602d79b15 Merge: c2422eb50 1a112a580 Author: Karel Zak Date: Mon Jan 5 12:34:58 2026 +0100 Merge branch 'add_annotate_opt_lscpu' of https://github.com/cgoesche/util-linux-fork * 'add_annotate_opt_lscpu' of https://github.com/cgoesche/util-linux-fork: lscpu: add --annotate info to man page bash-completion: (lscpu) add --annotate option lscpu: add column header annotations for -C and -e commit c2422eb504b48c0ba756547e29074c80d3b3328a Merge: 0f080c3c2 b8ed2e94e Author: Karel Zak Date: Mon Jan 5 12:32:13 2026 +0100 Merge branch 'fix_readprofile_mapfile_option' of https://github.com/cgoesche/util-linux-fork * 'fix_readprofile_mapfile_option' of https://github.com/cgoesche/util-linux-fork: readprofile: (manpage) fix incorrect file name in --mapfile description commit 0f080c3c24ddc4b377a60ca7eb5d1c9c72dd95be Merge: 27d47639d 3a3a77bfe Author: Karel Zak Date: Mon Jan 5 12:31:22 2026 +0100 Merge branch 'lsfd--no-vsock-diag' of https://github.com/masatake/util-linux * 'lsfd--no-vsock-diag' of https://github.com/masatake/util-linux: lsfd,test_mkfds: make linux/vm_sockets_diag.h optional commit 27d47639d56bb2381de8270af94780c3b768b1ec Merge: 8008325e2 0d5793ec5 Author: Karel Zak Date: Mon Jan 5 12:29:36 2026 +0100 Merge branch 'fix/check_long_opts_integrity_usage' of https://github.com/cgoesche/util-linux-fork * 'fix/check_long_opts_integrity_usage' of https://github.com/cgoesche/util-linux-fork: readprofile: fix memory leak related to boot_uname_r_str() in usage() lslogins: ignore special long options in CI CHECK setpriv: fix usage message inconsistency newgrp: provide --command info in output message logger: ignore libsystemd-dependent long opt in CI CHECK ci: add usage message consistency check to CI CHECK phase su-common: ignore runuser(1) specific long option in CI CHECK nologin: ignore well-known shell command-line options in CI CHECK unshare: fix inconsistency in usage message flock: resolve consistency issue in the usage message nsenter: ignore SELinux-specific long option in CI CHECK namei: ignore SELinux-specific long option in CI CHECK lsclocks: fix inconsistency in usage message hwclock: mark non-standard long options to ignore in CI CHECK tools: (get-options.sh) skip programs that do not use tools: (get-options.sh) ignore long opt definitions marked with IGNORECHECK=yes tools: (checkusage.sh) verify the completeness of listed long options commit 8008325e2167f145a8303cd52141c42623c5b34f Merge: e4656fa97 657cccbeb Author: Karel Zak Date: Mon Jan 5 11:19:52 2026 +0100 Merge branch 'PR/Benno-17Dec-25' # Conflicts: # sys-utils/unshare.c commit ab37ee449ce31252c192df7da280957f6b6f16f2 Author: Tobias Stoeckmann Date: Sun Jan 4 19:08:01 2026 +0100 login: Add UID to usage message The UID can be supplied instead of a username. Signed-off-by: Tobias Stoeckmann login-utils/login.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 1488efe3a487cff900026ac36620816a3850281e Author: Tobias Stoeckmann Date: Sun Jan 4 18:39:32 2026 +0100 login-utils/login: Sync usage with manual page The -f option is described differently in usage and man page. Use the usage version for better readability. Also note in manual page that UID is allowed as argument. Signed-off-by: Tobias Stoeckmann login-utils/login.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit dd836103f8a3987d91020b85530ed097ba5155fc Author: Tobias Stoeckmann Date: Sun Jan 4 15:27:04 2026 +0100 login-utils: add UIDs to manual pages Add information about UIDs as command line arguments to manual pages of chfn, chsh, and su, since they accept them now. Signed-off-by: Tobias Stoeckmann login-utils/chfn.1.adoc | 2 +- login-utils/chsh.1.adoc | 2 +- login-utils/su.1.adoc | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) commit f27fa20af99246e1d5f6f8aa4ac66da794c4c7f2 Author: Tobias Stoeckmann Date: Sun Jan 4 18:20:58 2026 +0100 pwdutils: fix grammar in comments No functional change Signed-off-by: Tobias Stoeckmann lib/pwdutils.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 6f6f8d5958bdd6a4185f251462ec0e929b3455d3 Author: Tobias Stoeckmann Date: Sun Jan 4 16:30:07 2026 +0100 setpwnam: use getline instead of fgets Handling long lines takes already a lot of code and if a line starts with a NUL character, an out of boundary read occurs. Just use getline. Signed-off-by: Tobias Stoeckmann login-utils/setpwnam.c | 27 ++------------------------- 1 file changed, 2 insertions(+), 25 deletions(-) commit a7aa54eeeb07bb27f151e42dd91085256228e281 Author: Tobias Stoeckmann Date: Sun Jan 4 16:28:39 2026 +0100 setpwnam: only unlock when actually locked If no lock is held, do not unlock. With glibc this is fine, but let's not put too many expectations on library implementations. Signed-off-by: Tobias Stoeckmann login-utils/setpwnam.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) commit 859450b47fd0248b00f155f5d85ea728996cf719 Author: Tobias Stoeckmann Date: Sun Jan 4 16:26:13 2026 +0100 setpwnam: check if /etc/passwd was fully read An error while reading the existing /etc/passwd should be properly handled to avoid truncation due to a bad read. Signed-off-by: Tobias Stoeckmann login-utils/setpwnam.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) commit 15dcfb7877d663e066e1e410d9ae3b69a540b991 Author: Tobias Stoeckmann Date: Sun Jan 4 15:26:19 2026 +0100 chsh: extend usage message The chsh utility accepts UIDs like chfn does, too. Signed-off-by: Tobias Stoeckmann login-utils/chsh.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit cbda3c5b71f7dd326714d97d2459c0682a780c11 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu Jan 1 18:05:09 2026 +0000 build(deps): bump actions/cache from 4 to 5 Bumps [actions/cache](https://github.com/actions/cache) from 4 to 5. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/cache dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] .github/workflows/cibuild.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 4f2308004a3e416dbd5a02eb8db03a2aab3f781b Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu Jan 1 18:05:04 2026 +0000 build(deps): bump actions/upload-artifact from 5 to 6 Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 5 to 6. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v5...v6) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] .github/workflows/cifuzz.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 4137fb87a6789a65918b0d4af1fba28dfc94e957 Author: Christian Goeschel Ndjomouo Date: Wed Dec 31 23:10:57 2025 -0500 style: fix coding style issues Signed-off-by: Christian Goeschel Ndjomouo disk-utils/fdisk-list.c | 2 +- lib/mangle.c | 2 +- lib/pty-session.c | 2 +- libmount/src/context.c | 2 +- libmount/src/context_umount.c | 2 +- libmount/src/fs.c | 2 +- libmount/src/hook_loopdev.c | 2 +- libmount/src/hook_mount.c | 2 +- libmount/src/tab_listmount.c | 2 +- libmount/src/utils.c | 4 ++-- libsmartcols/src/column.c | 2 +- libsmartcols/src/filter-param.c | 4 ++-- libsmartcols/src/filter.c | 2 +- login-utils/lslogins.c | 6 +++--- misc-utils/lsblk-properties.c | 2 +- term-utils/script.c | 4 ++-- term-utils/scriptlive.c | 2 +- 17 files changed, 22 insertions(+), 22 deletions(-) commit 0d5793ec573108ca912097933ed8a987716e5134 Author: Christian Goeschel Ndjomouo Date: Thu Dec 25 10:19:20 2025 -0500 readprofile: fix memory leak related to boot_uname_r_str() in usage() Signed-off-by: Christian Goeschel Ndjomouo sys-utils/readprofile.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit 98e887eca9cdddae2f8430a7e5d0c57f8ef47f58 Author: Christian Goeschel Ndjomouo Date: Thu Dec 25 01:03:02 2025 -0500 lslogins: ignore special long options in CI CHECK Signed-off-by: Christian Goeschel Ndjomouo login-utils/lslogins.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 6f0090b41eaf9438654bdf71890175261cf7ceab Author: Christian Goeschel Ndjomouo Date: Thu Dec 25 00:57:09 2025 -0500 setpriv: fix usage message inconsistency Signed-off-by: Christian Goeschel Ndjomouo sys-utils/setpriv.c | 1 + 1 file changed, 1 insertion(+) commit ece18c43e13a18a772d7e67dc2609db9149f95bb Author: Christian Goeschel Ndjomouo Date: Thu Dec 25 00:51:31 2025 -0500 newgrp: provide --command info in output message Signed-off-by: Christian Goeschel Ndjomouo login-utils/newgrp.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) commit ec4e09369576f5069a1e86fa925c29a3dd5a72d8 Author: Christian Goeschel Ndjomouo Date: Thu Dec 25 00:44:18 2025 -0500 logger: ignore libsystemd-dependent long opt in CI CHECK Signed-off-by: Christian Goeschel Ndjomouo misc-utils/logger.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 86b8a0e72f4d10f9180dac519f96059da59b6ff9 Author: Christian Goeschel Ndjomouo Date: Thu Dec 25 00:02:46 2025 -0500 ci: add usage message consistency check to CI CHECK phase Add 'make checkusage' to the GitHub CI CHECK phase. This ensures that all program's usage messages list all long options defined in their respective source code. Signed-off-by: Christian Goeschel Ndjomouo .github/workflows/cibuild.sh | 2 ++ 1 file changed, 2 insertions(+) commit 14c49dc27a5dbcf2c6a44bee47e5ac4638dde593 Author: Christian Goeschel Ndjomouo Date: Thu Dec 25 00:00:43 2025 -0500 su-common: ignore runuser(1) specific long option in CI CHECK Signed-off-by: Christian Goeschel Ndjomouo login-utils/su-common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 44859efdf9f7bf47caea0b85a638a1b8c2da57c7 Author: Christian Goeschel Ndjomouo Date: Wed Dec 24 23:54:22 2025 -0500 nologin: ignore well-known shell command-line options in CI CHECK Signed-off-by: Christian Goeschel Ndjomouo login-utils/nologin.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) commit 92a4055aa82fcc71f7bd1fd0d69da6f8438816e9 Author: Christian Goeschel Ndjomouo Date: Sun Dec 21 16:53:30 2025 -0500 unshare: fix inconsistency in usage message Closes: #3814 Signed-off-by: Christian Goeschel Ndjomouo sys-utils/unshare.c | 1 + 1 file changed, 1 insertion(+) commit bf3d4aeec708fae7aa30530a1bf42ee1d35366f8 Author: Martin Jungblut Schreiner Date: Mon Dec 29 20:46:39 2025 -0300 tests: fdisk: add regression test for missing EBR gap between logical partitions Add a DOS/MBR test case where the first logical partition starts at 6145 (extended start 2048). In the regressed behaviour fdisk allows the next logical partition to start at prev_end+1, which would place its EBR (start - 2048) inside the previous logical partition. The expected behaviour is to require the next starting sector to be at least prev_end + 2048 + 1 (e.g. 790528 in the testcase). Closes issue #3925. tests/expected/fdisk/mbr-logical-ebr-gap | 15 ++++++++++++++ tests/ts/fdisk/mbr-logical-ebr-gap | 35 ++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) commit 8b8da020f57414c90981371da71fdf32d2253ac7 Author: Martin Jungblut Schreiner Date: Mon Dec 29 19:52:56 2025 -0300 libfdisk: (dos) fix logical partition start fdisk could accept adjacent logical partitions, causing the EBR for the new logical partition to be written inside the previous partition’s data area. This can corrupt the EBR chain. Fix free-sector search to keep an EBR gap (first_lba) after logical partitions. libfdisk/src/dos.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) commit b8ed2e94e9c76a0607b5cb0818574939fc54c12f Author: Christian Goeschel Ndjomouo Date: Thu Dec 25 11:13:30 2025 -0500 readprofile: (manpage) fix incorrect file name in --mapfile description Signed-off-by: Christian Goeschel Ndjomouo sys-utils/readprofile.8.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 9d392f11a3c74ef1244c772fa523a86285db3883 Author: Kiran Rangoon Date: Sun Dec 28 22:51:00 2025 -0500 tests: correct UUID timestamp test expectations Update expected timestamps for additional test UUIDs to match actual output. These test cases provide coverage for various timestamp ranges including pre-epoch, historical, and far-future dates. Signed-off-by: Kiran Rangoon Reviewed-by: Thomas Weißschuh tests/expected/uuid/uuidparse | 3 +++ tests/ts/uuid/uuidparse | 3 +++ 2 files changed, 6 insertions(+) commit e6bd5aaa722cf2a29f901ef2fa07d54c09af8bc5 Author: Kiran Rangoon Date: Sun Dec 28 22:50:59 2025 -0500 libuuid: fix timestamp overflow for pre-1970 dates Use int64_t arithmetic to correctly handle timestamps before Unix epoch. This fixes the overflow that was causing UUID timestamps from 1582 to appear as far-future dates. Update test expectations accordingly. Signed-off-by: Kiran Rangoon Reviewed-by: Thomas Weißschuh libuuid/src/uuid_time.c | 2 +- tests/expected/uuid/uuidparse | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 49dcd5e635ffeaf8417a06337c31ccdd0ac68ae2 Author: Kiran Rangoon Date: Sun Dec 28 22:50:58 2025 -0500 libuuid: refactor gregorian_to_unix to populate timeval directly Change function signature to take struct timeval pointer and populate it directly, eliminating duplicate conversion code in callers. Signed-off-by: Kiran Rangoon Reviewed-by: Thomas Weißschuh libuuid/src/uuid_time.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) commit 75899c802366466ee988c0080202719bbd97747d Author: Kiran Rangoon Date: Sun Dec 28 22:50:57 2025 -0500 libuuid: simplify gregorian-to-unix offset calculation Replace complex bit-shift offset calculation with a simple constant definition for better readability and maintainability. Signed-off-by: Kiran Rangoon Reviewed-by: Thomas Weißschuh libuuid/src/uuid_time.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 1048d47206ba6e9d98a6208d5b1ef58e15d3a7c1 Author: Masatake YAMATO Date: Sun Dec 14 18:53:57 2025 +0900 tests: (lslocks) test -Q,--filter option Signed-off-by: Masatake YAMATO tests/expected/lslocks/filter | 69 +++++++++++++++++++ tests/ts/lslocks/filter | 154 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 223 insertions(+) commit adfb18b3c7a02db2ca3d50cb40b7d94095b391c3 Author: Masatake YAMATO Date: Sun Dec 14 18:51:32 2025 +0900 tests: (test_mkfds::nop) new factory just printing pid Signed-off-by: Masatake YAMATO tests/helpers/test_mkfds.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) commit c492f0fc468de0fce6650501ea0e74ca2c687efd Author: Masatake YAMATO Date: Mon Dec 29 16:22:24 2025 +0900 lslocks: special-case PID for filtering (skip −1) The PID column may be printed as −1 for locks that are not tied to a process or are inaccessible to lslocks (e.g., permission constraints). The libsmartcols filter engine does not support negative integers, so PID = −1 cannot be compared reliably. Attach the PID as cell userdata only when PID >= 0, and use that value for filter evaluation. Rows with PID = −1 are thus excluded from PID comparisons. No change to printed output. Signed-off-by: Masatake YAMATO misc-utils/lslocks.8.adoc | 4 ++++ misc-utils/lslocks.c | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) commit 01f7ce772c552fe9c367dc21550426bda95f051c Author: Masatake YAMATO Date: Tue Dec 16 06:41:59 2025 +0900 lslocks: make SIZE filterable by normalizing to bytes The SIZE column may be printed in raw bytes or human-readable units (KB/MB, etc.), which makes number-based comparison impossible. Normalize SIZE to a byte value and store it in the cell via libsmartcols `scols_cell_set_userdata`. When evaluating filter expressions, use the stored byte value instead of the printed SIZE. This enables consistent numeric comparisons (e.g., -Q 'SIZE > 1M') regardless of the output format. No change to printed output. Signed-off-by: Masatake YAMATO misc-utils/lslocks.c | 81 +++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 77 insertions(+), 4 deletions(-) commit 92513f5fff7f18ab0a9767a2281629e7bfd60506 Author: Masatake YAMATO Date: Wed Dec 10 23:35:10 2025 +0900 lslocks: implement Q, --filter option Signed-off-by: Masatake YAMATO bash-completion/lslocks | 1 + misc-utils/lslocks.8.adoc | 13 ++++- misc-utils/lslocks.c | 136 +++++++++++++++++++++++++++++++++++++++++++--- 3 files changed, 140 insertions(+), 10 deletions(-) commit 939936cd1acac8f07386dc1ca89b98bd04e9f021 Author: Masatake YAMATO Date: Wed Dec 10 22:36:05 2025 +0900 lslocks: factor out code getting and setting the data from add_scols_line Signed-off-by: Masatake YAMATO misc-utils/lslocks.c | 177 +++++++++++++++++++++++++++------------------------ 1 file changed, 95 insertions(+), 82 deletions(-) commit d57a3a99dc1e8fdd2292345993c38bd595a5be97 Author: Masatake YAMATO Date: Sat Dec 20 04:18:14 2025 +0900 lslocks: (refactor) move proc_locks to struct lslocks Signed-off-by: Masatake YAMATO misc-utils/lslocks.c | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) commit 3703406e83357239f9fa5ff307f9c77dd3ef7c2a Author: Masatake YAMATO Date: Sat Dec 20 03:45:28 2025 +0900 lslocks: (refactor) move pid_locks in main to struct lslocks Signed-off-by: Masatake YAMATO misc-utils/lslocks.c | 37 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 19 deletions(-) commit ac150d37874702c7f4146fa682adc67286a9508f Author: Masatake YAMATO Date: Sat Dec 20 01:46:43 2025 +0900 lslocks: (refactor) move "tab" file static variable to struct lslocks Signed-off-by: Masatake YAMATO misc-utils/lslocks.c | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) commit 49ccfc0225980bdb1d3c9902c483b1469752fd0e Author: Masatake YAMATO Date: Sat Dec 20 01:29:43 2025 +0900 lslocks: (refactor) add struct lslocks representing the global context Signed-off-by: Masatake YAMATO misc-utils/lslocks.c | 100 ++++++++++++++++++++++++++++++--------------------- 1 file changed, 60 insertions(+), 40 deletions(-) commit 1caa3907b22e3d7fee9b20431d146bb34c1be82c Author: Masatake YAMATO Date: Tue Dec 16 05:15:30 2025 +0900 lslocks: (refactor) use global bytes in get_json_type_for_column() `get_json_type_for_column()` used to take `representing_in_bytes`, but every caller passed the global `bytes`. The parameter added no value and split the ownership of the setting. Drop the parameter and read the global `bytes` instead. This aligns lslocks with lsblk and prepares for adding `-Q/--filter`. lsblk also reads global `bytes` defined in lsblk.c No functional change intended. Signed-off-by: Masatake YAMATO misc-utils/lslocks.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 3a3a77bfe008c405f364b4563bd2c927e2053aa7 Author: Masatake YAMATO Date: Thu Dec 25 06:54:13 2025 +0900 lsfd,test_mkfds: make linux/vm_sockets_diag.h optional Older kernels (at least 3.10 used by CentOS/RH/OEL 7.9) do not have linux/vm_sockets_diag.h yet. Closes: https://github.com/util-linux/util-linux/issues/3916 Co-Author: Fabian Groffen Signed-off-by: Masatake YAMATO configure.ac | 1 + lsfd-cmd/sock-xinfo.c | 11 ++++++++++- meson.build | 1 + tests/helpers/test_mkfds.c | 27 ++++++++++++++++++++------- 4 files changed, 32 insertions(+), 8 deletions(-) commit 1a112a580f14e8cfd966e4cf910aa221285c35d8 Author: Christian Goeschel Ndjomouo Date: Fri Dec 26 16:32:16 2025 -0500 lscpu: add --annotate info to man page Signed-off-by: Christian Goeschel Ndjomouo sys-utils/lscpu.1.adoc | 2 ++ 1 file changed, 2 insertions(+) commit e8d9fa1634909cea3dc80bd7f9ad23bc6f2bac31 Author: Christian Goeschel Ndjomouo Date: Fri Dec 26 16:29:44 2025 -0500 bash-completion: (lscpu) add --annotate option Signed-off-by: Christian Goeschel Ndjomouo bash-completion/lscpu | 1 + 1 file changed, 1 insertion(+) commit 8832034dea26268359de8f405f34ff004ea598e0 Author: Xing Guo Date: Fri Dec 26 20:25:54 2025 +0800 rfkill: Output in JSON format if -J is provided. This patch teaches rfkill output in JSON format if -J is provided. E.g., ``` $ ./rfkill -J list { "rfkilldevices": [ { "id": 0, "type": "bluetooth", "device": "tpacpi_bluetooth_sw", "soft": "unblocked", "hard": "unblocked" },{ "id": 1, "type": "wwan", "device": "tpacpi_wwan_sw", "soft": "unblocked", "hard": "unblocked" },{ "id": 3, "type": "wlan", "device": "phy0", "soft": "unblocked", "hard": "unblocked" },{ "id": 4, "type": "bluetooth", "device": "hci0", "soft": "unblocked", "hard": "unblocked" } ] } $ ./rfkill -J list bluetooth { "rfkilldevices": [ { "id": 0, "type": "bluetooth", "device": "tpacpi_bluetooth_sw", "soft": "unblocked", "hard": "unblocked" },{ "id": 4, "type": "bluetooth", "device": "hci0", "soft": "unblocked", "hard": "unblocked" } ] } ``` sys-utils/rfkill.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 08d025e480a4cc4205514e5a366c0a9f676127ce Author: Christian Goeschel Ndjomouo Date: Thu Dec 25 17:44:21 2025 -0500 lscpu: add column header annotations for -C and -e Signed-off-by: Christian Goeschel Ndjomouo sys-utils/lscpu.c | 15 +++++++++++++++ sys-utils/lscpu.h | 3 ++- 2 files changed, 17 insertions(+), 1 deletion(-) commit 6c22991a2f70c12b70094ece424bc9b42aa2bfd5 Author: Christian Goeschel Ndjomouo Date: Sun Dec 21 16:38:26 2025 -0500 flock: resolve consistency issue in the usage message Signed-off-by: Christian Goeschel Ndjomouo sys-utils/flock.c | 1 + 1 file changed, 1 insertion(+) commit 370b549b4d1438cddcd862b26baeb416fd21166b Author: Christian Goeschel Ndjomouo Date: Wed Dec 24 23:46:05 2025 -0500 nsenter: ignore SELinux-specific long option in CI CHECK Signed-off-by: Christian Goeschel Ndjomouo sys-utils/nsenter.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit aadc7d15c04c15bae3ba8c92c349a5c252909bf8 Author: Christian Goeschel Ndjomouo Date: Wed Dec 24 23:45:20 2025 -0500 namei: ignore SELinux-specific long option in CI CHECK Signed-off-by: Christian Goeschel Ndjomouo misc-utils/namei.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 63fe42e455dc5fa01600e81aeceda20349ff85b0 Author: Christian Goeschel Ndjomouo Date: Wed Dec 24 23:43:18 2025 -0500 lsclocks: fix inconsistency in usage message Signed-off-by: Christian Goeschel Ndjomouo misc-utils/lsclocks.c | 1 + 1 file changed, 1 insertion(+) commit 5a2d95bf958be9babc7dee0b68b0d30f23a2d4b0 Author: Christian Goeschel Ndjomouo Date: Wed Dec 24 23:32:43 2025 -0500 hwclock: mark non-standard long options to ignore in CI CHECK Signed-off-by: Christian Goeschel Ndjomouo sys-utils/hwclock.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) commit 4e24100ff971b443bf159ac26f81120f110a7de2 Author: Christian Goeschel Ndjomouo Date: Wed Dec 24 23:31:02 2025 -0500 tools: (get-options.sh) skip programs that do not use Signed-off-by: Christian Goeschel Ndjomouo tools/get-options.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit a216b5c43928cb85292e2e03d8f5de6b3677b37b Author: Christian Goeschel Ndjomouo Date: Wed Dec 24 22:54:29 2025 -0500 tools: (get-options.sh) ignore long opt definitions marked with IGNORECHECK=yes Signed-off-by: Christian Goeschel Ndjomouo tools/get-options.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) commit 2b0350822a0555421f29b28613dc06a4813aa806 Author: Christian Goeschel Ndjomouo Date: Sun Dec 21 15:07:10 2025 -0500 tools: (checkusage.sh) verify the completeness of listed long options Signed-off-by: Christian Goeschel Ndjomouo Makefile.am | 3 ++- tools/checkusage.sh | 43 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+), 1 deletion(-) commit f9bccccf31ec404c53efcc3adc500b234451106c Author: Masatake YAMATO Date: Sat Dec 20 03:19:42 2025 +0900 lslocks: (refactor) add a helper function refining value returned from get_lock Signed-off-by: Masatake YAMATO misc-utils/lslocks.c | 34 ++++++++++++++++++++++------------ 1 file changed, 22 insertions(+), 12 deletions(-) commit 69c3b2d9ccba6fd4e611fd10f3f13bcad92342e8 Author: Masatake YAMATO Date: Sat Dec 20 02:39:38 2025 +0900 lslocks: (refactor) don't use redundant callback functions Signed-off-by: Masatake YAMATO misc-utils/lslocks.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) commit 2d6fd67e5748e215a7d37c0c14ae5d4bba24d187 Author: Masatake YAMATO Date: Wed Dec 10 07:11:39 2025 +0900 lslocks: (refactor) specify list_head as type instead of abusing void* Signed-off-by: Masatake YAMATO misc-utils/lslocks.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 4d32b7628cb9591f4dbaca0f53cd695c64b6474e Author: Masatake YAMATO Date: Wed Dec 10 07:31:59 2025 +0900 lslocks: (refactor) use separate function to initialize libscols_table Signed-off-by: Masatake YAMATO misc-utils/lslocks.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) commit 91675a804e29c48761511d5ce73f5ea0eaa2c5c8 Author: Masatake YAMATO Date: Wed Dec 10 07:21:38 2025 +0900 lslocks: (refactor) remove an unused local variable Signed-off-by: Masatake YAMATO misc-utils/lslocks.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) commit f42948531bb2b7999e58e2837c38f7edc7793d68 Author: Masatake YAMATO Date: Wed Dec 10 07:20:08 2025 +0900 lslocks: (refactor) use narrow variable scoping for loop counters Signed-off-by: Masatake YAMATO misc-utils/lslocks.c | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) commit 77c4cd6a605e5226a5f206e93e543fee80fb3e53 Author: Masatake YAMATO Date: Sat Dec 20 04:04:59 2025 +0900 lslocks: (comment) fix grammar Signed-off-by: Masatake YAMATO misc-utils/lslocks.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit e4656fa9765f55eb4dcd45ca63b5eea43e59551b Author: Karel Zak Date: Wed Dec 17 13:10:13 2025 +0100 zramctl: Add note about column descriptions Addresses: https://github.com/util-linux/util-linux/issues/3903 Signed-off-by: Karel Zak sys-utils/zramctl.8.adoc | 2 ++ 1 file changed, 2 insertions(+) commit cddf56c10c7f0959c17bcf64267894dd7dbacb1f Merge: f08bfc65c 926b207ca Author: Karel Zak Date: Wed Dec 17 12:47:16 2025 +0100 Merge branch 'unshare/userowner' of https://github.com/arachsys-prs/util-linux * 'unshare/userowner' of https://github.com/arachsys-prs/util-linux: unshare: add --owner to set user namespace owner uid and gid Signed-off-by: Karel Zak commit f08bfc65cb52fb6e6f026326e1de2c0011db27f6 Merge: e3333eef5 8f84322ec Author: Karel Zak Date: Wed Dec 17 12:08:19 2025 +0100 Merge branch 'unshare/userbind' of https://github.com/arachsys-prs/util-linux * 'unshare/userbind' of https://github.com/arachsys-prs/util-linux: unshare: fix user namespace bind mounts unshare: remove get_mnt_ino() check in bind_ns_files_from_child() commit e3333eef5342733e2b1c6e45805d4dea675f24ec Merge: e39d25fa7 dd679c971 Author: Karel Zak Date: Wed Dec 17 12:07:00 2025 +0100 Merge branch 'lsns-8--fix-missing-comma' of https://github.com/masatake/util-linux * 'lsns-8--fix-missing-comma' of https://github.com/masatake/util-linux: docs: lsns(8): add missing a comma in SEE ALSO section commit e39d25fa75d6c5201bc224a27c2b56abc12a4f7a Merge: 9ac5db2c5 a8a75b667 Author: Karel Zak Date: Wed Dec 17 12:06:35 2025 +0100 Merge branch 'feat/su_accept_gid_args' of https://github.com/cgoesche/util-linux-fork * 'feat/su_accept_gid_args' of https://github.com/cgoesche/util-linux-fork: unshare: use MAX_OF_UINT_TYPE instead of (type)-1 chfn: enable the use of the username or UID unshare: use the new ul_get{grp,userpw}_str() routines login: use new xgetuserpw() instead of xgetpwnam() chsh: use new xgetuserpw() instead of xgetpwnam() su: accept group name and GID in -g and -G options tests: (su) test GID argument in --group option lib: (pwdutils.c) new library routines to get a group/passwd struct by name or GID/UID include/c.h: add MAX_OF_UINT_TYPE macro to get max num of an uint type commit 657cccbebd467eb6f521a7642070f6529e8fe81b Author: Benno Schulenberg Date: Tue Dec 9 16:02:22 2025 +0100 treewide: consistently use tabs for indentation where it is the rule Also unwrap a line, delete two blank lines, and improve three comments. Signed-off-by: Benno Schulenberg disk-utils/blockdev.c | 20 ++--- disk-utils/cfdisk.c | 8 +- disk-utils/fdformat.c | 2 +- disk-utils/fdisk-menu.c | 10 +-- disk-utils/fdisk.c | 6 +- disk-utils/mkfs.bfs.c | 2 +- disk-utils/mkfs.cramfs.c | 6 +- disk-utils/mkswap.c | 3 +- disk-utils/sfdisk.c | 4 +- lib/buffer.c | 2 +- lib/env.c | 86 ++++++++++----------- lib/fileeq.c | 2 +- lib/ismounted.c | 32 ++++---- lib/logindefs.c | 46 +++++------ lib/loopdev.c | 38 ++++----- lib/procfs.c | 4 +- lib/pty-session.c | 6 +- lib/shells.c | 54 ++++++------- lib/strutils.c | 148 +++++++++++++++++------------------ lib/sysfs.c | 171 ++++++++++++++++++++--------------------- lib/timer.c | 2 +- login-utils/login.c | 4 +- login-utils/sulogin-consoles.c | 10 +-- misc-utils/findmnt.c | 16 ++-- misc-utils/lastlog2.c | 7 +- misc-utils/lsblk-devtree.c | 16 ++-- misc-utils/rename.c | 4 +- sys-utils/ipcrm.c | 2 +- sys-utils/ldattach.c | 6 +- sys-utils/losetup.c | 2 +- sys-utils/lscpu-topology.c | 2 +- sys-utils/lsns.c | 16 ++-- sys-utils/swapoff.c | 2 +- sys-utils/tunelp.c | 4 +- sys-utils/unshare.c | 16 ++-- sys-utils/zramctl.c | 6 +- term-utils/agetty.c | 14 ++-- term-utils/mesg.c | 4 +- term-utils/script.c | 2 +- term-utils/scriptreplay.c | 4 +- text-utils/col.c | 65 ++++++++-------- text-utils/hexdump-display.c | 4 +- text-utils/hexdump-parse.c | 10 +-- text-utils/hexdump.c | 2 +- 44 files changed, 433 insertions(+), 437 deletions(-) commit 0710b8ed830bbf8d07b6a196811fe15e24d0182c Author: Benno Schulenberg Date: Tue Dec 9 16:02:21 2025 +0100 chmem: do not word a configuration failure as an instruction to the user When the current machine does not support configuring/deconfiguring memory, simply report that it cannot be done, instead of seemingly telling the user to skip the configuring/deconfiguring. Also, there is no need to mention `chmem` in the message: mentioning just the recommended option (-e or -d) is enough. Also, consistently terminate all four messages with a period. This improves upon commit ab2e709600 ("chmem: improve messages"). CC: Sumanth Korikkar Signed-off-by: Benno Schulenberg sys-utils/chmem.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 263c14f5db070c4b9b4f64fe7dbdf3a8ca4b745b Author: Benno Schulenberg Date: Tue Dec 9 16:02:20 2025 +0100 losetup: snip --verbose from bash-completion, and 'v' from options string This should have been part of commit 7e27c81597 from two months ago. Signed-off-by: Benno Schulenberg bash-completion/losetup | 1 - sys-utils/losetup.c | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) commit 8f84322ecf618b9c84040e08e346341f2853a139 Author: Chris Webb Date: Mon Dec 15 18:48:29 2025 +0000 unshare: fix user namespace bind mounts unshare --user= always fails because we no longer have CAP_SYS_ADMIN in the parent user namespace after unsharing to create the new one. As with unshare --mount=, fork a child to make the bind mount instead. Signed-off-by: Chris Webb sys-utils/unshare.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 35f142d33fbb758da7787f8040258b45f324b35e Author: Chris Webb Date: Mon Dec 15 18:41:08 2025 +0000 unshare: remove get_mnt_ino() check in bind_ns_files_from_child() get_mnt_ino() was originally introduced in c84f2590 where it was used in a loop to wait for the parent process to unshare the mount namespace before binding the namespace in its child. The parent and child processes are now synchronised with eventfd, so remove this vestigial check and the now-unused get_mnt_ino() function. This allows bind_ns_files_from_child() to be used even when the mount namespace isn't amongst the namespaces being unshared. Signed-off-by: Chris Webb sys-utils/unshare.c | 15 --------------- 1 file changed, 15 deletions(-) commit 926b207cae709b05ba53acf0ee4b88e529d51729 Author: Chris Webb Date: Sun Dec 14 23:18:33 2025 +0000 unshare: add --owner to set user namespace owner uid and gid As well as the mappings between lower and upper ids, a user namespace is associated with an owner user and group in its parent. These are set from the uid and gid when the unshare() call is made, and determine which user in the parent namespace has CAP_SYS_ADMIN in the child and can setns() into it. Add an --owner=: option which allows a privileged user to create a user namespace on behalf of another user, mapping parent ids and/or bind-mounting the namespace with privileges that the new owner would not have. Simplify the control flow around map_ids_from_child() vs mapping them inline to avoid too many special cases. We reset mapuser and mapgroup to -1 to signal that the mapping has been delegated to the child helper. For completeness, we maintain the semantics of --map-root-user and --map-current-user, binding the invoking user to root or itself in the new namespace. However, when --owner is used, these must be handled by a forked child as with --map-users and --map-groups. Signed-off-by: Chris Webb bash-completion/unshare | 1 + sys-utils/unshare.1.adoc | 3 +++ sys-utils/unshare.c | 45 ++++++++++++++++++++++++++++++++------------- 3 files changed, 36 insertions(+), 13 deletions(-) commit 4d5f4bb9230be43fb17d6ff1e95df2a498eaed23 Author: Karel Zak Date: Thu Dec 11 13:42:02 2025 +0100 tests: convert fallocate to use subtests Convert the fallocate test to use subtests pattern following the waitpid test example. This allows testing multiple scenarios in a single test run. Subtests: - alloc: Basic allocation test (original test) - report-data-holes: Report holes before digging (data holes) - dig-holes: Convert data holes to sparse holes with verbose output - report-file-holes: Report holes after digging (file holes) The test reuses the same image file across dig/report subtests to efficiently test the complete workflow: report → dig → report. Uses placeholder instead of absolute paths in expected output to ensure tests work from any directory. Signed-off-by: Karel Zak tests/expected/misc/{fallocate => fallocate-alloc} | 0 tests/expected/misc/fallocate-dig-holes | 1 + tests/expected/misc/fallocate-report-data-holes | 4 +++ tests/expected/misc/fallocate-report-file-holes | 4 +++ tests/ts/misc/fallocate | 41 +++++++++++++++++++++- 5 files changed, 49 insertions(+), 1 deletion(-) commit 3d214e7b1ced645b7092bb1aa999fead029fd312 Author: Karel Zak Date: Thu Dec 11 13:39:40 2025 +0100 fallocate: refactor --report-holes and --dig-holes output This commit consolidates duplicate printf() calls and calculations by introducing two new helper functions: - update_holestat(): Tracks hole statistics and prints verbose output for both HOLETYPE_FILE and HOLETYPE_DATA. Statistics are always collected regardless of report mode. - summary_holestat(): Prints summary output for file holes, data holes, and "converted to sparse holes" message. Uses consistent formatting with hole counts and percentages. Changes: - Made 'report' a global variable (like 'verbose') - Renamed struct holes_report to struct holestat for consistency - Changed struct fields to uintmax_t to eliminate casts in printf - Removed 'report' parameter from dig_holes() function - Unified dig and report modes to use single dig_holes() call - All output strings wrapped in _() for translation - Consistent printf() usage instead of mixed fprintf() - Percentage format: "(%ju bytes, %.2f%% of the file)" The refactoring eliminates ~40 lines of duplicate code while maintaining all functionality and improving code maintainability. Signed-off-by: Karel Zak sys-utils/fallocate.c | 159 ++++++++++++++++++++++++++++++-------------------- 1 file changed, 96 insertions(+), 63 deletions(-) commit 9ac5db2c5b7b8bde467448968c77a289b4ed1465 Author: yao zhang <294772273@qq.com> Date: Thu Dec 11 19:20:58 2025 +0800 Fix memory leak in setpwnam() Add memeory release for tmpname upon successful return. login-utils/setpwnam.c | 1 + 1 file changed, 1 insertion(+) commit dd679c971455a46778b1336de90bfc4b98bace62 Author: Masatake YAMATO Date: Thu Dec 11 07:51:25 2025 +0900 docs: lsns(8): add missing a comma in SEE ALSO section sys-utils/lsns.8.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit bc22db374361e90d2183dd3540eee2740e2561ee Author: syokensyo Date: Wed Dec 10 12:53:23 2025 +0100 fallocate: add --report-holes [kzak@redhat.com: - cleanup commit message, rebase] Fixes: #3822 Signed-off-by: Karel Zak bash-completion/fallocate | 1 + sys-utils/fallocate.1.adoc | 17 ++++++++++- sys-utils/fallocate.c | 75 ++++++++++++++++++++++++++++++++++++++++------ 3 files changed, 83 insertions(+), 10 deletions(-) commit e0d602bab9354e8225f2b0ca063dd449caa64e1c Author: Karel Zak Date: Wed Dec 10 12:09:44 2025 +0100 lib: (pidfd-utils.c) set __unused__ in right way Signed-off-by: Karel Zak lib/pidfd-utils.c | 4 ++++ 1 file changed, 4 insertions(+) commit 563ae8b49679f1aee78eb9967a7c60832267a6ab Merge: efd1d9a60 ce809d79c Author: Karel Zak Date: Wed Dec 10 12:01:06 2025 +0100 Merge branch 'fix/consolidate_validate_pfd_ino' of https://github.com/cgoesche/util-linux-fork * 'fix/consolidate_validate_pfd_ino' of https://github.com/cgoesche/util-linux-fork: lib: (pidutils.c) use uint64_t instead of ino_t for seamless cross-compatibility kill: use uint64_t as type for kill_control->pidfd_ino lib: (pidfd-utils.c) remove extraneous _GNU_SOURCE feature test macro lib: (pidfd-utils) new helper function to retrieve pidfd inode number lib: (pidfd-utils.c) add a helper routine to check the pidfd fs type kill: replace USE_KILL_WITH_PIDFD_INO ifdef with USE_PIDFD_INO_SUPPORT include: (pidfd-utils.h) conditionally define pidfd inode support libmount: add pidfs magic number for fstype check include: (statfs_magic.h) add pidfs magic number kill: use ul_get_valid_pidfd_or_err() to validate user provided pidfd inodes include: add helper routines for opening and validating pidfds commit efd1d9a607ba6e66464a5894544318c44f74172d Author: Karel Zak Date: Tue Dec 9 13:12:41 2025 +0100 libblkid: Keep NTFS name unmodified and mount driver independent We need stable filesystem names (types) even though there are multiple filesystem drivers. libmount now provides a way to map the stable fs-types to various mount-types. References: 4cd429fdcd3e7db1d031494987d5cf7411689d79 Signed-off-by: Karel Zak libblkid/src/superblocks/ntfs.c | 2 +- tests/expected/blkid/low-probe-ntfs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit fdac580358e7a1f7ab9fa2b0e330247872fa6979 Author: Karel Zak Date: Tue Dec 9 13:02:11 2025 +0100 libmount: add option to override fs-type with mount-type This patch introduces an internal libmount method to convert fs-type (as provided by libblkid or udevd) to mount-type to specify a different mount driver. Currently, the mapping from fs-type to mount-type is hardcoded in libmount as a temporary solution. The final implementation should provide configuration files (e.g., /etc/mount/fs.d/) for these mappings. The current default mapping is implemented only for NTFS. It can be modified during compilation with: ./configure --with-ntfs-mounttype=TYPE or meson setup build -D ntfs-mounttype=TYPE The default is "ntfs3". Addresses: https://github.com/util-linux/util-linux/pull/3618 Addresses: https://github.com/systemd/systemd/pull/39982 Signed-off-by: Karel Zak configure.ac | 10 ++++++++++ libmount/src/context.c | 11 +++++++++++ libmount/src/context_umount.c | 4 +++- libmount/src/mountP.h | 1 + libmount/src/utils.c | 27 ++++++++++++++++++++++++++- meson.build | 5 +++++ meson_options.txt | 4 ++++ 7 files changed, 60 insertions(+), 2 deletions(-) commit 8bdc2546d38979ca65fa9bfd1bbd6e7b985c69db Author: Karel Zak Date: Tue Nov 25 12:56:07 2025 +0100 libmount: read from udev, add --disable-libmount-udev-support The library traditionally uses libblkid to obtain device properties (such as FS-type if not specified). This can be a relatively costly operation to scan the device and requires read access to the device. All relevant libblkid information is usually cached by the udev DB. This commit adds the possibility to reuse the information from udev, with a fallback to libblkid if udev is not available. The commit also adds $ ./configure --disable-libmount-udev-support $ meson setup build -Dbuild-libmount-udev-support=disabled to completely disable this feature and avoid libmount's dependence on libsystemd. Signed-off-by: Karel Zak configure.ac | 18 +++++++++ libmount/meson.build | 5 +++ libmount/src/Makemodule.am | 4 ++ libmount/src/cache.c | 91 +++++++++++++++++++++++++++++++++++++++++----- libmount/src/version.c | 3 ++ meson.build | 6 +++ meson_options.txt | 5 +++ 7 files changed, 123 insertions(+), 9 deletions(-) commit 41521056a67bcd5c179b15df9e09265aba8ec732 Author: Karel Zak Date: Mon Nov 24 16:57:50 2025 +0100 libmount: enhance readability of read_from_blkid() Signed-off-by: Karel Zak libmount/src/cache.c | 33 ++++++++++++++------------------- 1 file changed, 14 insertions(+), 19 deletions(-) commit 800292e940b40d13ef9f5698a6d9a46599110a36 Author: Karel Zak Date: Mon Nov 24 09:54:20 2025 +0100 libmount: refactor mnt_cache_read_tags() Split the function into smaller functions to make it easier to read and extend in the future. Introduce a struct to hold all variants of tag names, including udev names in the future. Signed-off-by: Karel Zak libmount/src/cache.c | 97 +++++++++++++++++++++++++++++++++++----------------- 1 file changed, 66 insertions(+), 31 deletions(-) commit 08a0f0ae66e799d8f0f19fb8f5bbd73691af6880 Author: Karel Zak Date: Mon Nov 24 09:42:09 2025 +0100 libmount: refactor mnt_get_fstype() Move the current code into two small functions to improve readability and facilitate future extensions. Signed-off-by: Karel Zak libmount/src/cache.c | 75 ++++++++++++++++++++++++++++------------------------ 1 file changed, 40 insertions(+), 35 deletions(-) commit eb8ecb3cd78d414e8ede1d47566e7efea4af3a1b Merge: 8489ca738 50218435d Author: Karel Zak Date: Mon Dec 8 12:17:27 2025 +0100 Merge branch 'fix/procfs_extraneous_return' of https://github.com/cgoesche/util-linux-fork * 'fix/procfs_extraneous_return' of https://github.com/cgoesche/util-linux-fork: lib: (procfs.c) remove extraneous return statement commit 8489ca738764c32d85d6838a5d1f936e7d4f3fcb Merge: b650e6927 8fb291f94 Author: Karel Zak Date: Mon Dec 8 09:59:41 2025 +0100 Merge branch 'fix/login_shell_arg_null_str' of https://github.com/cgoesche/util-linux-fork * 'fix/login_shell_arg_null_str' of https://github.com/cgoesche/util-linux-fork: login: duplicate --shell argument to avoid nulling through explicit_bzero() commit 50218435dbeaa3574afa8d0acc76bcacf5488ecf Author: Christian Goeschel Ndjomouo Date: Thu Dec 4 14:00:32 2025 -0500 lib: (procfs.c) remove extraneous return statement Signed-off-by: Christian Goeschel Ndjomouo lib/procfs.c | 1 - 1 file changed, 1 deletion(-) commit ce809d79cc88cd1facda872fd8031b2a5c897e0d Author: Christian Goeschel Ndjomouo Date: Thu Dec 4 13:37:57 2025 -0500 lib: (pidutils.c) use uint64_t instead of ino_t for seamless cross-compatibility Signed-off-by: Christian Goeschel Ndjomouo include/pidutils.h | 4 ++-- lib/pidutils.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) commit d75ba99153d02f0b821a4b2e98a6827c2bc98cc8 Author: Christian Goeschel Ndjomouo Date: Thu Dec 4 13:35:21 2025 -0500 kill: use uint64_t as type for kill_control->pidfd_ino Signed-off-by: Christian Goeschel Ndjomouo misc-utils/kill.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 3d81cdd5881b248fdece446cf4f45a1e0d35ffdd Author: Christian Goeschel Ndjomouo Date: Thu Dec 4 10:16:25 2025 -0500 lib: (pidfd-utils.c) remove extraneous _GNU_SOURCE feature test macro Signed-off-by: Christian Goeschel Ndjomouo lib/pidfd-utils.c | 2 -- 1 file changed, 2 deletions(-) commit d6997b698f35034d5dae80eec0e5f6d5bf2a0d1e Author: Christian Goeschel Ndjomouo Date: Wed Dec 3 23:47:16 2025 -0500 lib: (pidfd-utils) new helper function to retrieve pidfd inode number Signed-off-by: Christian Goeschel Ndjomouo include/pidfd-utils.h | 8 +++++--- lib/pidfd-utils.c | 54 ++++++++++++++++++++++++++++++++------------------- 2 files changed, 39 insertions(+), 23 deletions(-) commit f90de571343efdd108047ec94b4cfd277accf126 Author: Christian Goeschel Ndjomouo Date: Wed Dec 3 22:59:54 2025 -0500 lib: (pidfd-utils.c) add a helper routine to check the pidfd fs type Signed-off-by: Christian Goeschel Ndjomouo include/pidfd-utils.h | 1 + lib/pidfd-utils.c | 41 ++++++++++++++++++++++++++++++++++------- 2 files changed, 35 insertions(+), 7 deletions(-) commit 086ec5cd4d784eb799d7c67349d9a442207f0cec Author: Christian Goeschel Ndjomouo Date: Wed Dec 3 20:45:05 2025 -0500 kill: replace USE_KILL_WITH_PIDFD_INO ifdef with USE_PIDFD_INO_SUPPORT Signed-off-by: Christian Goeschel Ndjomouo misc-utils/kill.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) commit 967fb9cbc2837263f7a44449c3f8e1a89251844a Author: Christian Goeschel Ndjomouo Date: Wed Dec 3 20:38:11 2025 -0500 include: (pidfd-utils.h) conditionally define pidfd inode support Signed-off-by: Christian Goeschel Ndjomouo include/pidfd-utils.h | 3 +++ 1 file changed, 3 insertions(+) commit 6da67c93fd944d00c3c0f70397f7283568816030 Author: Christian Goeschel Ndjomouo Date: Wed Dec 3 20:31:37 2025 -0500 libmount: add pidfs magic number for fstype check Signed-off-by: Christian Goeschel Ndjomouo libmount/src/utils.c | 1 + 1 file changed, 1 insertion(+) commit ed991af658ec776d83c65937e7aa6ec3bc4c77ab Author: Christian Goeschel Ndjomouo Date: Wed Dec 3 20:27:22 2025 -0500 include: (statfs_magic.h) add pidfs magic number Signed-off-by: Christian Goeschel Ndjomouo include/statfs_magic.h | 1 + 1 file changed, 1 insertion(+) commit 15225d77b822d05da2561ee874d5927f9d4eeb0b Author: Christian Goeschel Ndjomouo Date: Mon Nov 24 23:54:39 2025 -0500 kill: use ul_get_valid_pidfd_or_err() to validate user provided pidfd inodes Signed-off-by: Christian Goeschel Ndjomouo misc-utils/kill.c | 29 ++--------------------------- 1 file changed, 2 insertions(+), 27 deletions(-) commit bf7166be215a473852204f74f62d3862b66d9b52 Author: Christian Goeschel Ndjomouo Date: Mon Nov 24 23:26:48 2025 -0500 include: add helper routines for opening and validating pidfds With the new ul_get_valid_pidfd_or_err() routine util-linux tools can now simply validate pidfd inode numbers before opening a file descriptor for a given PID. Signed-off-by: Christian Goeschel Ndjomouo include/pidfd-utils.h | 2 ++ lib/Makemodule.am | 1 + lib/meson.build | 1 + lib/pidfd-utils.c | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 58 insertions(+) commit b650e692702bda91d2b6ff4a27329f2ea087274f Merge: 5756e7ba8 bc577050f Author: Karel Zak Date: Thu Dec 4 18:41:44 2025 +0100 Merge branch 'PR/column-input-separator-alias' of https://github.com/karelzak/util-linux-work * 'PR/column-input-separator-alias' of https://github.com/karelzak/util-linux-work: column: add --input-separator as an alias for --separator commit 8fb291f942382a460b514abd891871e657d94cfb Author: Christian Goeschel Ndjomouo Date: Thu Dec 4 12:02:30 2025 -0500 login: duplicate --shell argument to avoid nulling through explicit_bzero() Addresses: #3855 Signed-off-by: Christian Goeschel Ndjomouo login-utils/login.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 5756e7ba8aba220177099188c3d120e111199fa9 Author: Karel Zak Date: Thu Dec 4 16:58:28 2025 +0100 github: revert actions/checkout for ubuntu 18.04 Signed-off-by: Karel Zak .github/workflows/cibuild.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 7b8ab6c785b3fa80da79230a05b1c6d529746047 Merge: 9880917c4 61fe4126e Author: Karel Zak Date: Thu Dec 4 14:26:40 2025 +0100 Merge branch 'feat/login_shell_option' of https://github.com/cgoesche/util-linux-fork * 'feat/login_shell_option' of https://github.com/cgoesche/util-linux-fork: login: document -s and --shell on the man page login: define shell to log in to with -s or --shell commit 9880917c49f3ea75f0cbbd6bf204c71f1242fe0d Merge: ae4b0f2d5 11a38ec82 Author: Karel Zak Date: Thu Dec 4 14:25:52 2025 +0100 Merge branch 'update_guid_zfs' of https://github.com/mminkus/util-linux * 'update_guid_zfs' of https://github.com/mminkus/util-linux: libfdisk: modernize ZFS GPT type description commit 61fe4126eaff3e8f7b52d57d63a4c7b8d2685f17 Author: Christian Goeschel Ndjomouo Date: Wed Nov 26 23:07:14 2025 -0500 login: document -s and --shell on the man page Signed-off-by: Christian Goeschel Ndjomouo login-utils/login.1.adoc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) commit e6a17012e42a1dd61cfe74f8c0b6e8804beb7c56 Author: Christian Goeschel Ndjomouo Date: Wed Nov 26 22:52:21 2025 -0500 login: define shell to log in to with -s or --shell The -s and --shell options allow a user to define a shell to log in to other than the one defined it the passwd entry or _PATH_BSHELL. Addresses: #3855 Signed-off-by: Christian Goeschel Ndjomouo login-utils/login.c | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) commit ae4b0f2d5a00bf1755f7727c98fc159291750f64 Merge: 1b47c5ba6 54023fdf0 Author: Karel Zak Date: Wed Dec 3 11:40:57 2025 +0100 Merge branch 'fix/issue_3865' of https://github.com/lord2y/util-linux * 'fix/issue_3865' of https://github.com/lord2y/util-linux: login-utils, sys-utils: use _PATH_BSHELL consistently *: use ul_default_shell() for interactive shell spawning lib: introduce ul_default_shell() for consistent shell resolution commit 1b47c5ba66431cb8ef8ddb10480f6d3284beb941 Merge: 7932b7c55 561f0bb21 Author: Karel Zak Date: Wed Dec 3 11:37:12 2025 +0100 Merge remote-tracking branch 'github/dependabot/github_actions/actions/checkout-6' commit 7932b7c55a0e1a8e3853b119c4379f50be6df3a9 Merge: ce44fe7c1 906f1b7a7 Author: Karel Zak Date: Wed Dec 3 11:36:42 2025 +0100 Merge remote-tracking branch 'github/dependabot/github_actions/actions/upload-artifact-5' commit ce44fe7c1bb3e71541c0ab8fb91898c702407575 Merge: 9bfd9d926 58684fa95 Author: Karel Zak Date: Wed Dec 3 11:33:17 2025 +0100 Merge remote-tracking branch 'github/dependabot/github_actions/github/codeql-action-4' commit 9bfd9d9262e9b42eb56f601945acbbe72a3c0220 Merge: 764c97800 c5c8326a8 Author: Karel Zak Date: Wed Dec 3 11:14:13 2025 +0100 Merge branch 'feat/check_bash_comp_integrity' of https://github.com/cgoesche/util-linux-fork * 'feat/check_bash_comp_integrity' of https://github.com/cgoesche/util-linux-fork: bash-completion: (lslogins) fix typo in long option tools: (checkcompletion.sh) test the integrity of long options completion tools: new helper for extraction of program long options from source files commit bc577050f952b3ea0603c6ca8a4354950b330402 Author: Karel Zak Date: Wed Dec 3 11:11:59 2025 +0100 column: add --input-separator as an alias for --separator This change adds --input-separator as an alias for the existing --separator option, providing symmetry with --output-separator. The new alias is documented in: - command-line help text - man page - bash completion Fixes: https://github.com/util-linux/util-linux/issues/3889 Signed-off-by: Karel Zak bash-completion/column | 3 ++- text-utils/column.1.adoc | 2 +- text-utils/column.c | 4 +++- 3 files changed, 6 insertions(+), 3 deletions(-) commit 11a38ec82c4db476c47be9e5dc19fc4d6d159cce Author: Martin Minkus Date: Tue Dec 2 19:51:05 2025 -0800 libfdisk: modernize ZFS GPT type description The GPT type GUID 6A898CC3-1DD2-11B2-99A6-080020736631 is currently described as "Solaris /usr & Apple ZFS". This reflects early Solaris and Apple experiments with ZFS, but today the same GUID is widely used by OpenZFS implementations on Linux, illumos, FreeBSD, and other platforms to mark ZFS pool member partitions. Apple's ZFS work was discontinued long ago, while OpenZFS has become the actively maintained and de facto standard implementation. Update the human-readable description to the simpler and more accurate: "ZFS pool member" A short comment is added to note the GUID’s historical Solaris /usr origin and its brief use by Apple. Only the description string is changed; the GUID itself and its semantics remain unchanged. include/pt-gpt-partnames.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 764c97800eadd1a49225c566771fec6905115acb Author: Karel Zak Date: Tue Dec 2 16:08:38 2025 +0100 cal: add note about today highlight on -w Signed-off-by: Karel Zak misc-utils/cal.1.adoc | 3 +++ 1 file changed, 3 insertions(+) commit a8a75b667520c72c45b032bf42b8905cb276ee3c Author: Christian Goeschel Ndjomouo Date: Tue Dec 2 00:50:28 2025 -0500 unshare: use MAX_OF_UINT_TYPE instead of (type)-1 Signed-off-by: Christian Goeschel Ndjomouo sys-utils/unshare.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 384840b432cde849cbdb3d5c0e88ca5959a4ca96 Author: Christian Goeschel Ndjomouo Date: Thu Nov 27 21:56:05 2025 -0500 chfn: enable the use of the username or UID Signed-off-by: Christian Goeschel Ndjomouo login-utils/chfn.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) commit 0a7fb806118bc4418e231081bd13c69bbc31b988 Author: Christian Goeschel Ndjomouo Date: Thu Nov 27 21:32:41 2025 -0500 unshare: use the new ul_get{grp,userpw}_str() routines This change refactors get_group() and get_user(), so that it uses the new routines ul_getgrp_str() and ul_getuserpw_str(), to simplify the code and remove the overkill mem allocations. Signed-off-by: Christian Goeschel Ndjomouo sys-utils/unshare.c | 40 ++++++++++++---------------------------- 1 file changed, 12 insertions(+), 28 deletions(-) commit 561f0bb21d2e88b5feca2fdf56b283a6f48befc5 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon Dec 1 21:01:27 2025 +0000 build(deps): bump actions/checkout from 1 to 6 Bumps [actions/checkout](https://github.com/actions/checkout) from 1 to 6. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v1...v6) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] .github/workflows/cibuild.yml | 14 +++++++------- .github/workflows/codeql.yml | 2 +- .github/workflows/coverity.yml | 2 +- .github/workflows/differential-shellcheck.yml | 2 +- 4 files changed, 10 insertions(+), 10 deletions(-) commit 54023fdf092ca479e1ccd5e6a7aa69cef68f840a Author: Alessandro Ratti Date: Sun Nov 23 16:26:37 2025 +0100 login-utils, sys-utils: use _PATH_BSHELL consistently Remove local DEFAULT_SHELL definitions and hardcoded "/bin/sh" strings in favor of the standard _PATH_BSHELL macro from . This provides consistency across the codebase while following libc conventions. These tools already perform their own passwd lookups and only need a fallback value, so they don't require the full ul_default_shell() resolution logic. Affected tools: - su(1): already checks pw_shell validity - sulogin(8): emergency login with explicit shell handling - setpriv(1): already has passwd entry for environment setup Signed-off-by: Alessandro Ratti login-utils/su-common.c | 5 +---- login-utils/sulogin.c | 9 +++++---- sys-utils/setpriv.c | 6 ++---- 3 files changed, 8 insertions(+), 12 deletions(-) commit 6651ae5822610789d9ca620c4e0e65c3bd4e12af Author: Alessandro Ratti Date: Sun Nov 23 16:24:52 2025 +0100 *: use ul_default_shell() for interactive shell spawning Update tools that spawn interactive shells to use ul_default_shell() for consistent shell resolution. This ensures these tools respect both $SHELL and the user's configured shell from the passwd database before falling back to _PATH_BSHELL. Affected tools: - script(1): fixes history truncation when invoked without $SHELL - scriptlive(1): consistent with script(1) behavior - flock(1): for -c command execution - more(1): for shell escape feature - exec_shell (used by unshare(1) and nsenter(1)) This change addresses user reports of data loss due to tools defaulting to /bin/sh instead of the user's configured shell, particularly affecting command history with different HISTSIZE configurations. Addresses: https://github.com/util-linux/util-linux/issues/3865 Signed-off-by: Alessandro Ratti lib/exec_shell.c | 8 ++------ sys-utils/flock.c | 6 +++--- term-utils/script.c | 5 ++--- term-utils/scriptlive.c | 5 ++--- text-utils/more.c | 6 +++--- 5 files changed, 12 insertions(+), 18 deletions(-) commit bd89462910f32042dbe1882044a5c076638a89b9 Author: Alessandro Ratti Date: Sun Nov 23 16:20:57 2025 +0100 lib: introduce ul_default_shell() for consistent shell resolution Add a new ul_default_shell() function to provide consistent shell resolution across util-linux tools. The function follows a priority order: $SHELL environment variable, user's shell from passwd database, and finally _PATH_BSHELL as fallback. The function supports flags to control its behavior: - UL_SHELL_NOENV: skip $SHELL environment variable check - UL_SHELL_NOPWD: skip passwd database lookup This addresses the issue where tools like script(1) would default to /bin/sh without respecting the user's configured shell, potentially causing data loss. Addresses: https://github.com/util-linux/util-linux/issues/3865 Suggested-by: Karel Zak Suggested-by: Thomas Weißschuh Signed-off-by: Alessandro Ratti include/shells.h | 7 +++++++ lib/Makemodule.am | 1 + lib/meson.build | 1 + lib/shells.c | 26 ++++++++++++++++++++++++++ 4 files changed, 35 insertions(+) commit 742ccd111746908b4dfeaceaacab18f466ce840d Merge: 363f155a6 3ce751c03 Author: Karel Zak Date: Mon Dec 1 11:21:22 2025 +0100 Merge branch 'lsfd--fix-error-file-memleak' of https://github.com/masatake/util-linux * 'lsfd--fix-error-file-memleak' of https://github.com/masatake/util-linux: lsfd: fix memory leak related to stat_error_class commit 363f155a66dc5187248a263ad3fbb857443e5dc8 Merge: ab9f07439 4a1d1e33b Author: Karel Zak Date: Mon Dec 1 11:10:11 2025 +0100 Merge branch 'master' of https://github.com/jthackray/util-linux * 'master' of https://github.com/jthackray/util-linux: lscpu: Add a few missing Arm CPU identifiers commit 5a65afff1dfbd33ccf3304d6ed0dedce0a2bd6aa Author: Christian Goeschel Ndjomouo Date: Thu Nov 27 20:05:38 2025 -0500 login: use new xgetuserpw() instead of xgetpwnam() Signed-off-by: Christian Goeschel Ndjomouo login-utils/login.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) commit fb8d31db2c1655d564c7cfaaf97fa490c1e1706e Author: Christian Goeschel Ndjomouo Date: Thu Nov 27 20:04:58 2025 -0500 chsh: use new xgetuserpw() instead of xgetpwnam() Signed-off-by: Christian Goeschel Ndjomouo login-utils/chsh.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 1a5773de844015a6413535b0672856653c15ba8d Author: Christian Goeschel Ndjomouo Date: Tue Nov 25 22:19:12 2025 -0500 su: accept group name and GID in -g and -G options Signed-off-by: Christian Goeschel Ndjomouo login-utils/su-common.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 51b488d48a4d707384d7bb51c0742525bff0aafb Author: Christian Goeschel Ndjomouo Date: Tue Nov 25 22:29:03 2025 -0500 tests: (su) test GID argument in --group option Signed-off-by: Christian Goeschel Ndjomouo tests/expected/su/group-group-id | 1 + tests/ts/su/group | 10 ++++++++++ 2 files changed, 11 insertions(+) commit 563ce081db1fdc11ae290e15f430193e1dcef85a Author: Christian Goeschel Ndjomouo Date: Tue Nov 25 21:36:23 2025 -0500 lib: (pwdutils.c) new library routines to get a group/passwd struct by name or GID/UID In some tools users can specify groups/users by their name but not the GID or UID. To enable this in a trivial manner util-linux tools can now call the ul_getgrp_str(), ul_getuserpw_str(), xgetgroup() and xgetuserpw() routines to achieve this. Signed-off-by: Christian Goeschel Ndjomouo include/pwdutils.h | 6 +- lib/Makemodule.am | 1 + lib/pwdutils.c | 204 ++++++++++++++++++++++++++++++++++++----------------- 3 files changed, 143 insertions(+), 68 deletions(-) commit 0c841ec5eb35400abf2a65c58a799d4045942a8d Author: Christian Goeschel Ndjomouo Date: Sun Nov 30 20:14:30 2025 -0500 include/c.h: add MAX_OF_UINT_TYPE macro to get max num of an uint type Signed-off-by: Christian Goeschel Ndjomouo include/c.h | 1 + 1 file changed, 1 insertion(+) commit 3ce751c0347de472ac1dcdd58e06a21759f1ad78 Author: Masatake YAMATO Date: Sun Nov 30 04:10:46 2025 +0900 lsfd: fix memory leak related to stat_error_class Memory objects pointed by the name member of a file object allocate as an instance of stat_error_class are leaked. I intrdouced this bug in a125e2eea7cea4d0bac1404c2e1b1d65d11cc10c. In the commit, I arranged the class hierarchy. Signed-off-by: Masatake YAMATO lsfd-cmd/file.c | 6 ++++++ 1 file changed, 6 insertions(+) commit 4a1d1e33b56beccfb70d4f10e4ea1a5b91a5af2f Author: Jonathan Thackray Date: Thu Nov 27 16:54:40 2025 +0000 lscpu: Add a few missing Arm CPU identifiers sys-utils/lscpu-arm.c | 5 +++++ 1 file changed, 5 insertions(+) commit ab9f074397eee7c9db308dad1b40125f1e1c9f2c Author: Christian Goeschel Ndjomouo Date: Fri Nov 28 01:17:03 2025 -0500 lslogins: remove duplicate errno initialization Signed-off-by: Christian Goeschel Ndjomouo login-utils/lslogins.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) commit c5c8326a8a19b7560b23fea386804c9f1325295b Author: Christian Goeschel Ndjomouo Date: Thu Nov 27 00:40:54 2025 -0500 bash-completion: (lslogins) fix typo in long option Signed-off-by: Christian Goeschel Ndjomouo bash-completion/lslogins | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 0166a0de4ca6b2b019236a987979d0bd2fc1e41c Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 22:07:56 2025 -0500 tools: (checkcompletion.sh) test the integrity of long options completion Signed-off-by: Christian Goeschel Ndjomouo tools/checkcompletion.sh | 58 ++++++++++++++++++++++++++++++------------------ 1 file changed, 36 insertions(+), 22 deletions(-) commit c608d7f851b6306ae4cb2faf2e00cf29e83d498b Author: cgoesche Date: Fri Oct 31 01:58:11 2025 -0400 tools: new helper for extraction of program long options from source files Signed-off-by: Christian Goeschel Ndjomouo tools/checkcompletion.sh | 35 ++++++++++++++++++ tools/get-options.sh | 96 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 131 insertions(+) commit cc1f2ac99b99eede36a58cf115a56bdfbc977e52 Author: Karel Zak Date: Thu Nov 27 16:50:19 2025 +0100 eject: fix const qualifier warning in read_speed Fix const qualifier discarded warning in read_speed(). This warning is reported by gcc 15 which defaults to the C23 standard. The strrchr() function returns a pointer into a const string, so the receiving variable must be declared as const char *. Signed-off-by: Karel Zak sys-utils/eject.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 4c94ce5d05d97420df7a512bbbaee8c4017414ae Author: Karel Zak Date: Thu Nov 27 16:48:53 2025 +0100 partx: fix const qualifier warning in get_max_partno Fix const qualifier discarded warning in get_max_partno(). This warning is reported by gcc 15 which defaults to the C23 standard. The strrchr() function returns a pointer into a const string, so the receiving variable must be declared as const char *. Signed-off-by: Karel Zak disk-utils/partx.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 70379d240dcf975d140160bb4c14cf1b3fe70bcc Author: Karel Zak Date: Thu Nov 27 16:47:46 2025 +0100 enosys: fix const qualifier warning in parse_block Fix const qualifier discarded warning in parse_block(). This warning is reported by gcc 15 which defaults to the C23 standard. The strchr() function returns a pointer into a const string, so the receiving variable must be declared as const char *. Signed-off-by: Karel Zak misc-utils/enosys.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 01018b74163f9122c75179a7c991b0aa0f8c603c Author: Karel Zak Date: Thu Nov 27 16:46:22 2025 +0100 whereis: fix const qualifier warnings for C23 Fix const qualifier discarded warnings in dirlist_add_subdir() and lookup() functions. These warnings are reported by gcc 15 which defaults to the C23 standard. The strchr() and strrchr() functions return pointers into const strings, so the receiving variables must be declared as const char *. Signed-off-by: Karel Zak misc-utils/whereis.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) commit e318417f00982bf496fd2359853b07ada3e3c544 Author: Karel Zak Date: Thu Nov 27 16:44:47 2025 +0100 namei: fix const qualifier warning in readlink_to_namei Fix const qualifier discarded warning in readlink_to_namei(). This warning is reported by gcc 15 which defaults to the C23 standard. The strrchr() function returns a pointer into a const string, so the receiving variable must be declared as const char *. Signed-off-by: Karel Zak misc-utils/namei.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 22c3b959ef381b35a55ed00cf6acd2507b461d4b Author: Karel Zak Date: Thu Nov 27 16:43:38 2025 +0100 logger: fix const qualifier warnings for C23 Fix const qualifier discarded warnings in valid_structured_data_param() and valid_structured_data_id() functions. These warnings are reported by gcc 15 which defaults to the C23 standard. The strchr() and strstr() functions return pointers into const strings, so the receiving variables must be declared as const char *. Signed-off-by: Karel Zak misc-utils/logger.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) commit 935f2ab21add95059a92208f69ef578708307481 Author: Karel Zak Date: Thu Nov 27 16:38:18 2025 +0100 lsfd: fix const qualifier warning in strnrstr Fix const qualifier discarded warning in strnrstr(). This warning is reported by gcc 15 which defaults to the C23 standard. The function returns a non-const pointer into the haystack parameter, and callers modify the string through that pointer. Therefore, the haystack parameter should be char * rather than const char *. Signed-off-by: Karel Zak lsfd-cmd/file.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 014d2779afb4118d7117442eeed562e2c7b7594f Author: Karel Zak Date: Thu Nov 27 16:35:56 2025 +0100 lsfd: fix const qualifier warning in new_counter_spec Fix const qualifier discarded warning in new_counter_spec(). This warning is reported by gcc 15 which defaults to the C23 standard. The function modifies the input string by inserting a null terminator to split it into name and expression parts, so the parameter should be char * rather than const char *. Signed-off-by: Karel Zak lsfd-cmd/lsfd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 40e6850d2b2ba2492d5f3e75656cb9bcce2806bb Author: Karel Zak Date: Thu Nov 27 16:33:04 2025 +0100 dmesg: fix const qualifier warnings in parse_callerid Fix const qualifier discarded warnings in parse_callerid(). These warnings are reported by gcc 15 which defaults to the C23 standard. The strchr() and strstr() functions return pointers into const strings, so the receiving variables must be declared as const char *. Signed-off-by: Karel Zak sys-utils/dmesg.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) commit c45442ef125270d0ab2cb539747ccaf737d60d37 Author: Karel Zak Date: Thu Nov 27 16:28:41 2025 +0100 libblkid: fix const qualifier warning in blkid_parse_tag_string Fix const qualifier discarded warning in blkid_parse_tag_string(). This warning is reported by gcc 15 which defaults to the C23 standard. The strchr() function returns a pointer into a const string, so introduce a separate 'eq' variable to hold this const pointer for finding the '=' separator. Also move the 'cp' variable declaration into the block where it's actually used for quote handling. Signed-off-by: Karel Zak libblkid/src/tag.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) commit 530bf5c5b071753e149699c638ad1820daf5c205 Author: Karel Zak Date: Thu Nov 27 16:24:11 2025 +0100 libmount: fix const qualifier warning in mnt_parse_mountinfo_line Fix const qualifier discarded warning in mnt_parse_mountinfo_line(). This warning is reported by gcc 15 which defaults to the C23 standard. The strstr() function returns a pointer into a const string, so introduce a separate 'sep' variable to hold this const pointer, keeping 'p' for non-const unmangle() results that need to be freed. Signed-off-by: Karel Zak libmount/src/tab_parse.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) commit c0c79c41527365ca7de30c75daaa018ea01fff97 Author: Karel Zak Date: Thu Nov 27 15:45:55 2025 +0100 libmount: fix const qualifier warnings for C23 Fix const qualifier discarded warnings in optlist_add_flags(), mnt_opt_value_with(), and mnt_optstr_apply_flags() functions. These warnings are reported by gcc 15 which defaults to the C23 standard. The strchr() and strstr() functions return pointers into const strings, so the receiving variables must be declared as const char *. Signed-off-by: Karel Zak libmount/src/optlist.c | 7 +++---- libmount/src/optstr.c | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) commit dbe4c16973d5d0f69ba3bf1bd8942a51de9a0933 Author: Karel Zak Date: Thu Nov 27 15:41:21 2025 +0100 lsns: fix const qualifier warnings for C23 Fix const qualifier discarded warnings in read_persistent_namespaces() and is_path_included() functions. These warnings are reported by gcc 15 which defaults to the C23 standard. The strchr() and strstr() functions return pointers into const strings, so the receiving variables must be declared as const char *. Signed-off-by: Karel Zak sys-utils/lsns.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 72b3231a306c003e4a856df54240c32f8b8eb793 Merge: 6c537ea82 0cef3e4f5 Author: Karel Zak Date: Thu Nov 27 12:40:16 2025 +0100 Merge branch 'PR/build-bsearch-const' of https://github.com/karelzak/util-linux-work * 'PR/build-bsearch-const' of https://github.com/karelzak/util-linux-work: lib, lscpu: fix const qualifier discarded warnings in bsearch commit 6c537ea825f83ed524ecd922d486b7dc5f1c3d66 Merge: 1300c1fdd ff2650962 Author: Karel Zak Date: Thu Nov 27 10:32:15 2025 +0100 Merge branch 'lsfd--tun-netns' of https://github.com/masatake/util-linux * 'lsfd--tun-netns' of https://github.com/masatake/util-linux: lsfd: add TUN.DEVNETNS column tests: (lsfd::mkfds-cdev-tun,refactor) make the case extensible lsfd: (doc) fix English in SOCK.NETNS description lsfd: (cleanup) add missing "break" in a case statement lsfd: (cleanup) return 0 instead of false lsfd: (refactor) introduce tundata struct commit 1300c1fdd1c89e4cf3ebbfe93d469e0fccd326a7 Merge: 387b1b1ca b243de928 Author: Karel Zak Date: Thu Nov 27 10:30:59 2025 +0100 Merge branch 'drop-const' of https://github.com/DaanDeMeyer/util-linux * 'drop-const' of https://github.com/DaanDeMeyer/util-linux: blkid: Drop const from blkid_partitions_get_name() commit 0cef3e4f5aac19bc3623883ca64c66538aa9b442 Author: Karel Zak Date: Thu Nov 27 10:27:07 2025 +0100 lib, lscpu: fix const qualifier discarded warnings in bsearch Fix compilation warnings from newer compilers with stricter const-correctness checks. When bsearch() searches in const arrays, the result pointer must also be const to avoid discarding the const qualifier. Fixed in: - lib/color-names.c: searching in static const basic_schemes[] - sys-utils/lscpu-cputype.c: searching in const pattern arrays The warnings were: lib/color-names.c:62:13: error: assignment discards 'const' qualifier from pointer target type [-Werror=discarded-qualifiers] Signed-off-by: Karel Zak lib/color-names.c | 3 ++- sys-utils/lscpu-cputype.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) commit 387b1b1ca3cc09641a998f2e4fc63892bd7d5dfb Merge: 75a776c64 d9836753d Author: Karel Zak Date: Thu Nov 27 10:10:37 2025 +0100 Merge branch 'docs--how-contribute' of https://github.com/masatake/util-linux * 'docs--how-contribute' of https://github.com/masatake/util-linux: docs: write about EditorConfig commit b243de928aab8565e264f4af1d776cc860689f64 Author: Daan De Meyer Date: Wed Nov 26 15:08:25 2025 +0100 blkid: Drop const from blkid_partitions_get_name() const for idx is useless as the value is copied anyway, so drop the const. AFAIK this doesn't change ABI. libblkid/src/blkid.h.in | 2 +- libblkid/src/partitions/partitions.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 75a776c64040c260b2cfe5e637a8cb8aa56e4b68 Merge: 979b13831 a2a6b7d61 Author: Karel Zak Date: Wed Nov 26 11:46:55 2025 +0100 Merge branch 'fix/inconsistent_bash_completions' of https://github.com/cgoesche/util-linux-fork * 'fix/inconsistent_bash_completions' of https://github.com/cgoesche/util-linux-fork: bash-completion: (unshare) add missing --map-subids option tunelp: remove extraneous -T option partx: mark the --list option as deprecated namei: reestablish --nosymlinks option's functionality bash-completion: (mountpoint) add missing --show option bash-completion: (mount) add missing --ro option mount: document --ro option on the man page mount: add missing --ro option info in usage message bash-completion: (lslogins) add missing long options lslogins: fix incomplete option info in usage message lsclocks: add missing --no-discover-rtc option info in usage message bash-completion: (lsclocks) add missing --no-discover-rtc option bash-completion: (hwclock) add missing --ul-debug option bash-completion: (flock) add missing long options flock: fix incomplete -n option info in usage message commit 979b13831a36899a159f61f652f95ce2055119c3 Merge: 711bda144 6cc285a9d Author: Karel Zak Date: Wed Nov 26 11:26:13 2025 +0100 Merge branch 'array_size_countof' of https://github.com/crrodriguez/util-linux * 'array_size_countof' of https://github.com/crrodriguez/util-linux: include: implement ARRAY_SIZE with compiler _Countof if supported commit d9836753d1d8ac22701bc12817a9cf5ae6de52c4 Author: Masatake YAMATO Date: Wed Nov 26 17:36:53 2025 +0900 docs: write about EditorConfig Signed-off-by: Masatake YAMATO Documentation/howto-contribute.txt | 3 +++ 1 file changed, 3 insertions(+) commit 6cc285a9d07d53099ce2e318466a56bb6b1e0606 Author: Cristian Rodríguez Date: Mon Nov 24 17:04:08 2025 -0300 include: implement ARRAY_SIZE with compiler _Countof if supported C2Y has _Countof operator for this. GCC has an stdcountof.h hedaer and a countof definition Clang implements _Countof and needs __has_extension check include/c.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) commit a2a6b7d61eda1e16a7af3bdc16eccd16667c2e2b Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 23:32:11 2025 -0500 bash-completion: (unshare) add missing --map-subids option Signed-off-by: Christian Goeschel Ndjomouo bash-completion/unshare | 1 + 1 file changed, 1 insertion(+) commit 647541d06ff7e23766aa45c006779fabbd6f61dc Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 23:30:15 2025 -0500 tunelp: remove extraneous -T option Signed-off-by: Christian Goeschel Ndjomouo sys-utils/tunelp.c | 1 - 1 file changed, 1 deletion(-) commit f485a07b4197c4216b8767bfa0e1bfd81c4175a1 Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 23:19:56 2025 -0500 partx: mark the --list option as deprecated Signed-off-by: Christian Goeschel Ndjomouo disk-utils/partx.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit dbd18d20e543d1c453235a3dec64edadc00642e3 Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 23:04:55 2025 -0500 namei: reestablish --nosymlinks option's functionality Signed-off-by: Christian Goeschel Ndjomouo misc-utils/namei.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 661798cf3170d6c74fce5511194470d37876f7c2 Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 23:01:30 2025 -0500 bash-completion: (mountpoint) add missing --show option Signed-off-by: Christian Goeschel Ndjomouo bash-completion/mountpoint | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 754d18b7029fadd2adad1ed2168fd4a2b5270133 Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 22:59:31 2025 -0500 bash-completion: (mount) add missing --ro option Signed-off-by: Christian Goeschel Ndjomouo bash-completion/mount | 1 + 1 file changed, 1 insertion(+) commit 22de06af301327e810d05a3a3aba5c653976a3d0 Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 22:58:35 2025 -0500 mount: document --ro option on the man page Signed-off-by: Christian Goeschel Ndjomouo sys-utils/mount.8.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 947a19355cab82236c632bea24d08e187bfaf45c Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 22:57:35 2025 -0500 mount: add missing --ro option info in usage message Signed-off-by: Christian Goeschel Ndjomouo sys-utils/mount.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 19d10eda1fc43f9d45429485ca28092e3d2e8bc9 Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 22:53:31 2025 -0500 bash-completion: (lslogins) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/lslogins | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 09330dfe53260b89293ed9f9ed86db6efbb3f932 Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 22:51:34 2025 -0500 lslogins: fix incomplete option info in usage message Signed-off-by: Christian Goeschel Ndjomouo login-utils/lslogins.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) commit f648be022a4c4e851235542419ce5d54a63dc0b8 Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 22:41:07 2025 -0500 lsclocks: add missing --no-discover-rtc option info in usage message Signed-off-by: Christian Goeschel Ndjomouo misc-utils/lsclocks.c | 1 + 1 file changed, 1 insertion(+) commit 0592699282f9f73cae07d4fe34f9ad653ad1cd5c Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 22:40:26 2025 -0500 bash-completion: (lsclocks) add missing --no-discover-rtc option Signed-off-by: Christian Goeschel Ndjomouo bash-completion/lsclocks | 1 + 1 file changed, 1 insertion(+) commit 2470180bd9ff9cd0e7f18a39a9f1a8fb60e46fde Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 22:35:09 2025 -0500 bash-completion: (hwclock) add missing --ul-debug option Signed-off-by: Christian Goeschel Ndjomouo bash-completion/hwclock | 1 + 1 file changed, 1 insertion(+) commit 1a005e379d31eb36654bf23784f94e872fdb5b44 Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 22:31:00 2025 -0500 bash-completion: (flock) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/flock | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit 14c1a16a1d85ec925e80970f7114d63b5fe0f1a9 Author: Christian Goeschel Ndjomouo Date: Sun Nov 23 22:29:01 2025 -0500 flock: fix incomplete -n option info in usage message Signed-off-by: Christian Goeschel Ndjomouo sys-utils/flock.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit ff2650962f09b9abef33116b9b4ecd1da2feacae Author: Masatake YAMATO Date: Sun Nov 23 16:18:48 2025 +0900 lsfd: add TUN.DEVNETNS column lsfd can show the name of the network device behind a file descriptor pointing to a tun/tap device. # lsfd -Q 'SOURCE == "misc:tun"' COMMAND PID USER ASSOC XMODE TYPE SOURCE MNTID INODE NAME qemu-system-x86 846384 qemu 35 rw---- CHR misc:tun 36 1145 iface=vnet21 pasta.avx2 1837933 yamato 8 rw---m CHR misc:tun 2143 1145 iface=ens8191 ... This feature helps users inspect target processes, containers, and/or VMs with tools such as tcpdump, wireshark, or ip-link. However, I found a case where the device name was not sufficient. pasta (https://passt.top/) provides networking for rootless containers. It creates a tap device whose name matches the name of a network device on the host: $ ip link show ens8191 5: ens8191: mtu 1500 ... $ ethtool -i ens8191 | head -1 driver: atlantic $ podman exec 9fbbed215871 ip link show ens8191 2: ens8191: mtu 65520 ... $ podman exec 9fbbed215871 ethtool -i ens8191 | head -1 driver: tun A name alone is not enough to identify a network device on the system. With this change, lsfd reports the network namespace to which the tun/tap device belongs: # lsfd -Q 'SOURCE == "misc:tun"' -oCOMMAND,PID,SOURCE,TUN.DEVNETNS,NAME COMMAND PID SOURCE TUN.DEVNETNS NAME qemu-system-x86 846384 misc:tun 4026531840 iface=vnet21 devnetns=4026531840 pasta.avx2 1837933 misc:tun 4026536354 iface=ens8191 devnetns=4026536354 ... This change relies on the TUNGETDEVNETNS ioctl added in: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0c3e0e3bb623c3735b8c9ab8aa8332f944f83a9f Signed-off-by: Masatake YAMATO lsfd-cmd/cdev.c | 77 +++++++++++++++++++++- lsfd-cmd/lsfd.1.adoc | 5 +- lsfd-cmd/lsfd.c | 3 + lsfd-cmd/lsfd.h | 1 + .../{mkfds-cdev-tun => mkfds-cdev-tun-domestic} | 0 .../expected/lsfd/mkfds-cdev-tun-domestic-devnetns | 1 + tests/expected/lsfd/mkfds-cdev-tun-foreign | 4 ++ .../expected/lsfd/mkfds-cdev-tun-foreign-devnetns | 1 + tests/ts/lsfd/mkfds-cdev-tun | 52 +++++++++++++-- 9 files changed, 138 insertions(+), 6 deletions(-) commit 711bda1441561bfd2eb6d45fe0bc789535c1f1a8 Author: Cristian Rodríguez Date: Sat Nov 22 10:41:08 2025 -0300 lsfd: fix bsearch macro usage with glibc C23 C23 requires bsearch to be a const preserving macro, build now fails with ../lsfd-cmd/lsfd.c:1879:75: error: macro ‘bsearch’ passed 6 arguments, but takes just 5 1879 | nfds, sizeof(struct pollfd), pollfdcmp)) | ^ In file included from ../include/c.h:17, from ../lsfd-cmd/lsfd.c:48: /usr/include/stdlib.h:987:10: note: macro ‘bsearch’ defined here 987 | # define bsearch(KEY, BASE, NMEMB, SIZE, COMPAR) \ add parenthesis around expression to fix it. lsfd-cmd/lsfd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit aed371507cc18cd613449396aa35b3303484e2c8 Author: Masatake YAMATO Date: Sun Nov 23 16:00:24 2025 +0900 tests: (lsfd::mkfds-cdev-tun,refactor) make the case extensible Signed-off-by: Masatake YAMATO tests/ts/lsfd/mkfds-cdev-tun | 57 +++++++++++++++++++++++++++----------------- 1 file changed, 35 insertions(+), 22 deletions(-) commit 171a6410c43993cf7d06f8aa0d2b715952570d4b Author: Masatake YAMATO Date: Sun Nov 23 17:43:40 2025 +0900 lsfd: (doc) fix English in SOCK.NETNS description Signed-off-by: Masatake YAMATO lsfd-cmd/lsfd.1.adoc | 2 +- lsfd-cmd/lsfd.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 4db0abf8df020551c10bb3dda651c5eebdb2725f Author: Masatake YAMATO Date: Sun Nov 23 08:15:38 2025 +0900 lsfd: (cleanup) add missing "break" in a case statement Signed-off-by: Masatake YAMATO lsfd-cmd/cdev.c | 1 + 1 file changed, 1 insertion(+) commit 87ebe6b37d781fa0232dbe6f5a1c131586e29e6f Author: Masatake YAMATO Date: Sun Nov 23 08:14:42 2025 +0900 lsfd: (cleanup) return 0 instead of false Signed-off-by: Masatake YAMATO lsfd-cmd/cdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit bffe45293fd20260ffae387c488b480a8899d360 Author: Masatake YAMATO Date: Sun Nov 23 06:35:14 2025 +0900 lsfd: (refactor) introduce tundata struct Signed-off-by: Masatake YAMATO lsfd-cmd/cdev.c | 33 ++++++++++++++++++++++++--------- 1 file changed, 24 insertions(+), 9 deletions(-) commit 21bf9f6d442e42dc62ca7905770f2429a7eb0cb9 Merge: 8820d3486 da5b727cd Author: Karel Zak Date: Thu Nov 20 13:34:23 2025 +0100 Merge branch 'PR/mountpoint-statmount' of https://github.com/karelzak/util-linux-work * 'PR/mountpoint-statmount' of https://github.com/karelzak/util-linux-work: mountpoint: use single libmount cache for all path resolutions mountpoint: add --show option to print mountpoint path mountpoint: use statmount() syscall on modern kernels commit 8820d3486ad8c03098e30aa15efa9f915b0c179d Merge: 142eedfb2 c62bb65ad Author: Karel Zak Date: Thu Nov 20 12:20:01 2025 +0100 Merge branch 'master-branch-4' of https://github.com/Leefancy/util-linux * 'master-branch-4' of https://github.com/Leefancy/util-linux: kill: the situation where fd is opened but not closed commit da5b727cd9a64d9992155f7ec60819a301c7354d Author: Karel Zak Date: Wed Nov 19 13:46:40 2025 +0100 mountpoint: use single libmount cache for all path resolutions Move libmount cache initialization to main() and pass it through the control structure. This allows the cache to be reused across all mnt_resolve_path() calls, reducing allocations. Also add cleanup section in main() with goto labels for proper resource deallocation in a single location. Signed-off-by: Karel Zak sys-utils/mountpoint.c | 36 ++++++++++++++++++++++-------------- 1 file changed, 22 insertions(+), 14 deletions(-) commit f7facbb928a908ff4453891e45f124669f8318f1 Author: Karel Zak Date: Wed Nov 19 13:32:25 2025 +0100 mountpoint: add --show option to print mountpoint path Add a new --show option that prints the actual mountpoint path for a given directory or file. This is useful for: - Resolving any path to its containing mountpoint - Finding the canonical mountpoint path when symlinks are involved - Determining the mountpoint from paths within filesystems The option requires kernel support for statmount(2) (Linux 6.8+). On older kernels without statmount support, the option fails with an error message, as the /proc/self/mountinfo fallback cannot resolve arbitrary paths to their containing mountpoint. Example usage: $ mountpoint --show / / $ mountpoint --show /home/user/file.txt /home The --show option always returns EXIT_SUCCESS (0) when it successfully finds the mountpoint, regardless of whether the given path itself is a mountpoint or not. Addresses: https://github.com/util-linux/util-linux/issues/3806 Signed-off-by: Karel Zak sys-utils/mountpoint.1.adoc | 3 +++ sys-utils/mountpoint.c | 27 ++++++++++++++++++++++++--- 2 files changed, 27 insertions(+), 3 deletions(-) commit 5fc8401d09d791d132badd3029426407a8733dea Author: Karel Zak Date: Wed Nov 19 13:01:02 2025 +0100 mountpoint: use statmount() syscall on modern kernels Improve mountpoint(1) to use the modern statmount() system call (available since Linux 6.8) instead of parsing /proc/self/mountinfo. - Works without /proc mounted on modern kernels - More efficient than parsing /proc/self/mountinfo - Better detection of bind mounts via statmount() - Graceful fallback maintains compatibility Addresses: https://github.com/util-linux/util-linux/issues/3806 Signed-off-by: Karel Zak sys-utils/mountpoint.1.adoc | 2 +- sys-utils/mountpoint.c | 108 +++++++++++++++++++++++++++++++++++++++----- 2 files changed, 98 insertions(+), 12 deletions(-) commit c62bb65ad321eebea18f32f5529f8f0a085e57e2 Author: fortunate-lee Date: Wed Nov 19 09:59:18 2025 +0800 kill: the situation where fd is opened but not closed Signed-off-by: fortunate-lee misc-utils/kill.c | 3 +++ 1 file changed, 3 insertions(+) commit 142eedfb247710db65f127e9738d5ffab7e27cae Merge: b2f9be521 4aec9df42 Author: Karel Zak Date: Tue Nov 18 09:57:27 2025 +0100 Merge branch 'set_up' of https://github.com/sbraz/util-linux * 'set_up' of https://github.com/sbraz/util-linux: Fix typos when "set up" is used as a verb commit b2f9be52153e16ad8a9704dc3781ae6408b3566f Author: fortunate-lee Date: Tue Nov 18 10:37:58 2025 +0800 fincore: The previous exit did not call munmap, resulting in a memory mapping leak. Signed-off-by: fortunate-lee misc-utils/fincore.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 4aec9df42a7c2ff09bbcc7a45afbb69a64bda437 Author: Louis Sautier Date: Sun Nov 16 22:44:02 2025 +0100 Fix typos when "set up" is used as a verb The noun is "setup" while the verb is "set up". disk-utils/fsck.c | 2 +- libmount/src/context_mount.c | 2 +- libmount/src/hook_idmap.c | 2 +- libmount/src/hook_loopdev.c | 4 ++-- sys-utils/losetup.8.adoc | 2 +- sys-utils/rtcwake.8.adoc | 2 +- tests/expected/libmount/loop-o-loop-val-conflict | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) commit 376496a3d35fd5a94e9c429b00c695885539f197 Merge: 792824f65 28e91d087 Author: Karel Zak Date: Fri Nov 14 09:56:03 2025 +0100 Merge branch 'fix/su_lsb5_compliance' of https://github.com/cgoesche/util-linux-fork * 'fix/su_lsb5_compliance' of https://github.com/cgoesche/util-linux-fork: tests: (su) add more options tests su: pass arguments after to shell commit 792824f65ce627be880b3f60f77f734be704a445 Merge: ab2e70960 0a031019c Author: Karel Zak Date: Fri Nov 14 09:48:02 2025 +0100 Merge branch 'close-fts-handle' of https://github.com/syokensyo/util-linux * 'close-fts-handle' of https://github.com/syokensyo/util-linux: fincore: close the ftsp to prevent fd leak commit ab2e709600f3dc456b882628c1d490e7a3e7fa8f Author: Karel Zak Date: Wed Nov 12 12:18:10 2025 +0100 chmem: improve messages Suggested-by: Sumanth Korikkar Signed-off-by: Karel Zak sys-utils/chmem.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 2d3d763d75d6524932b7e8cb4dcb15ca2da39b1a Merge: 9f85e3998 6cdbe0651 Author: Karel Zak Date: Wed Nov 12 12:10:03 2025 +0100 Merge branch 'fincore/eperm' of https://github.com/t-8ch/util-linux * 'fincore/eperm' of https://github.com/t-8ch/util-linux: fincore: do not fall back to mincore if cachestat fails with EPERM commit 9f85e399871525ca071bfdc0f5a49e6f15e2fa60 Merge: 1d1d9cd8a 8653af249 Author: Karel Zak Date: Wed Nov 12 12:09:26 2025 +0100 Merge branch 'PR/cal-header-colors' of https://github.com/karelzak/util-linux-work * 'PR/cal-header-colors' of https://github.com/karelzak/util-linux-work: tests: update cal color outputs cal: improve header color printing commit 1d1d9cd8ae2e86ed3206b12be3c61905f7a140de Merge: a4d8a0dc9 c4d255b8b Author: Karel Zak Date: Wed Nov 12 12:08:39 2025 +0100 Merge branch 'PR/chmem-dynamic-configuration' of https://github.com/karelzak/util-linux-work * 'PR/chmem-dynamic-configuration' of https://github.com/karelzak/util-linux-work: tests: update lsmem outputs lsmem: use xstrncpy() lsmem,chmem: add configure/deconfigure bash completion options lsmem: add doc for dynamic (de)configuration and memmap-on-memory support chmem: add chmem documentation for dynamic (de)configuration of memory chmem: add support for dynamic (de)configuration of hotplug memory lsmem: add support to display dynamic (de)configuration of memory lsmem: display global memmap on memory parameter commit 0a031019cffb125d570c7730c843a9cd8b8282a8 Author: syokensyo Date: Wed Nov 12 14:57:57 2025 +0800 fincore: close the ftsp to prevent fd leak misc-utils/fincore.c | 1 + 1 file changed, 1 insertion(+) commit a4d8a0dc9bdb2cf19602b1cc20acf91c0333829c Merge: 08e3cfc50 5bbe47432 Author: Karel Zak Date: Mon Nov 10 12:46:55 2025 +0100 Merge branch 'lsfd--netlink-lport-data-size' of https://github.com/masatake/util-linux * 'lsfd--netlink-lport-data-size' of https://github.com/masatake/util-linux: lsfd: (bugfix) use PRIu32 for prining lport of netlink socket commit 08e3cfc503b1a773868b0f354211b1d6e7029a64 Merge: 3df88efd3 6ed7ac3ca Author: Karel Zak Date: Mon Nov 10 12:46:02 2025 +0100 Merge branch 'hwclock-rtc-fix-typo' of https://github.com/jgilles/util-linux * 'hwclock-rtc-fix-typo' of https://github.com/jgilles/util-linux: hwclock-rtc: fix verbose output when --param-set value is unchanged commit 3df88efd329772980529f20b7618f4468728ddf1 Merge: c305d73ee ccb00ea5e Author: Karel Zak Date: Mon Nov 10 12:43:57 2025 +0100 Merge branch 'fallocate' of https://github.com/t-8ch/util-linux * 'fallocate' of https://github.com/t-8ch/util-linux: tests: (swaplabel) don't create test image with truncate(1) fallocate: require posix_fallocate() from libc fallocate: drop syscall() fallback for fallocate() build: simplify checks for fallocate() and posix_fallocate() commit c305d73eebc11279e8e85454b58a3f4d7c36874d Author: Leefancy Date: Mon Nov 10 17:14:18 2025 +0800 Fix the issue of fd resource leakage Signed-off-by: Leefancy misc-utils/kill.c | 2 ++ 1 file changed, 2 insertions(+) commit ccb00ea5efe064b265104fbd19b36883172d9700 Author: Thomas Weißschuh Date: Sat Nov 1 16:50:49 2025 +0100 tests: (swaplabel) don't create test image with truncate(1) truncate(1) can create holes in the file. These will trigger a warning in mkswap(1), failing the testsuite. Given that fallocate(1) now alway supports posix_fallocate() which works on all filesystems, truncate(1) is unnecessary anyways. Reported-by: Christian Hesse Signed-off-by: Thomas Weißschuh tests/ts/misc/swaplabel | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) commit 13b4a466cef2ff9176cb40eaaf0a82f42c1f0f71 Author: Thomas Weißschuh Date: Sat Nov 1 16:55:49 2025 +0100 fallocate: require posix_fallocate() from libc Recent libcs implement posix_fallocate() properly. The fallback logic should never be used. Furthermore unconditional support for posix_fallocate() will enable some further cleanup and fixes. Signed-off-by: Thomas Weißschuh configure.ac | 3 ++- meson.build | 1 + sys-utils/fallocate.c | 12 ------------ 3 files changed, 3 insertions(+), 13 deletions(-) commit 941265121258160db37ac4778f19b19baf7a5951 Author: Thomas Weißschuh Date: Sat Nov 1 21:49:58 2025 +0100 fallocate: drop syscall() fallback for fallocate() The ABI of the fallocate() syscall is complicated and not properly handled by the open-coded fallback logic. As all recent libcs implement fallocate() properly, drop the open-coded systemcall fallback and depend on the libc implementation. Signed-off-by: Thomas Weißschuh configure.ac | 4 ++-- meson.build | 5 ++++- sys-utils/fallocate.c | 9 +-------- 3 files changed, 7 insertions(+), 11 deletions(-) commit 6fb7ee330af7acbbcd93d559761229329b4d0bf2 Author: Thomas Weißschuh Date: Fri Nov 7 12:47:20 2025 +0100 build: simplify checks for fallocate() and posix_fallocate() The bespoke test logic for those two functions was only necessary for old glibc versions which have long gone out of support. Align the checks with all other ones. Signed-off-by: Thomas Weißschuh configure.ac | 63 ++---------------------------------------------------------- meson.build | 34 ++------------------------------ 2 files changed, 4 insertions(+), 93 deletions(-) commit 5bbe47432f98a7e391da04157af9906832058ef7 Author: Masatake YAMATO Date: Sat Nov 8 11:42:31 2025 +0900 lsfd: (bugfix) use PRIu32 for prining lport of netlink socket Fixes #3849 Signed-off-by: Masatake YAMATO lsfd-cmd/sock-xinfo.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 6ed7ac3ca5fdef498a3317f65ee1c5625b1ba4c2 Author: Jesse Gilles Date: Fri Nov 7 13:27:49 2025 -0600 hwclock-rtc: fix verbose output when --param-set value is unchanged RTC_PARAM_SET operation is skipped rather than GET sys-utils/hwclock-rtc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 3fbe891735ab0b866118755df37ec0c968e0f79e Merge: 326b656b6 f1f7085b8 Author: Karel Zak Date: Fri Nov 7 12:33:56 2025 +0100 Merge branch 'fix/missing_long_opts_completions' of https://github.com/cgoesche/util-linux-fork * 'fix/missing_long_opts_completions' of https://github.com/cgoesche/util-linux-fork: (41 commits) bash-completion: (nsenter) add missing --follow-context bash-completion: (namei) add missing --context bash-completion: (setpriv) add missing long options bash-completion: (pg) add missing long options bash-completion: (lastlog2) add missing --active bash-completion: (whereis) add missing long options bash-completion: (wdctl) add missing long options bash-completion: (uuidd) add missing --cont-clock bash-completion: (unshare) add missing long options bash-completion: (swapon) add missing --options bash-completion: (sfdisk) add missing long options bash-completion: (setsid) add missing --fork bash-completion: (scriptlive) add missing --echo bash-completion: (renice) add missing --relative bash-completion: (more) add missing --exit-on-eof bash-completion: (mkswap) add missing long options bash-completion: (mkfs.minix) add missing --lock bash-completion: (mkfs.cramfs) add missing long options bash-completion: (mkfs.bfs) add missing --lock bash-completion: (lsmem) add missing --split ... commit 326b656b602738fc2b6c0d009d2f67d6d835ffae Merge: 8e28ec958 3cd29d861 Author: Karel Zak Date: Fri Nov 7 12:19:16 2025 +0100 Merge branch 'PR/benno-losetup' of https://github.com/karelzak/util-linux-work * 'PR/benno-losetup' of https://github.com/karelzak/util-linux-work: losetup: (man) put the synopses in a better order, the name-giver first losetup: remove the --verbose flag, as it doesn't actually do anything losetup: sort 'O' correctly for the mutual-exclusive check to work commit 8e28ec958daf6c2c127d2b776bb453eb5cea269a Merge: 3636e6de6 abfce923b Author: Karel Zak Date: Fri Nov 7 12:18:50 2025 +0100 Merge branch 'PR/include-optutils-err' of https://github.com/karelzak/util-linux-work * 'PR/include-optutils-err' of https://github.com/karelzak/util-linux-work: include/optutils: improve err_exclusive_options() output commit 8653af2499e47c03ec29f622f840b01e823a1ac1 Author: Karel Zak Date: Fri Nov 7 12:15:51 2025 +0100 tests: update cal color outputs Signed-off-by: Karel Zak tests/expected/cal/color-first-day | 4 ++-- tests/expected/cal/color-last-day | 4 ++-- tests/expected/cal/color-reformation-corner-cases-1 | 4 ++-- tests/expected/cal/color-reformation-corner-cases-2 | 4 ++-- tests/expected/cal/color-reformation-corner-cases-3 | 4 ++-- tests/expected/cal/color-reformation-corner-cases-4 | 4 ++-- tests/expected/cal/color-vertical | 2 +- tests/expected/cal/color-vertical-week | 2 +- tests/expected/cal/colorw-first-day-week-numbers | 4 ++-- tests/expected/cal/colorw-last-day-week-numbers | 4 ++-- tests/expected/cal/colorw-reformation-corner-cases-1-week-numbers | 4 ++-- tests/expected/cal/colorw-reformation-corner-cases-2-week-numbers | 4 ++-- tests/expected/cal/colorw-reformation-corner-cases-3-week-numbers | 4 ++-- tests/expected/cal/colorw-reformation-corner-cases-4-week-numbers | 4 ++-- 14 files changed, 26 insertions(+), 26 deletions(-) commit 3636e6de6e1e3c8e6d7c51808bcecc8549665c8e Author: Karel Zak Date: Fri Nov 7 11:57:58 2025 +0100 login: add line break after timeout message Just to make login(1) more user-friendly for those who do crazy things. Based on https://github.com/util-linux/util-linux/pull/3842 Signed-off-by: Karel Zak login-utils/login.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit c4d255b8ba067cdcd504f85dfac2e1c454c5e6b1 Author: Karel Zak Date: Fri Nov 7 11:41:21 2025 +0100 tests: update lsmem outputs Signed-off-by: Karel Zak tests/expected/lsmem/lsmem-s390-zvm-6g | 6 ++++++ tests/expected/lsmem/lsmem-x86_64-16g | 6 ++++++ 2 files changed, 12 insertions(+) commit 255a2d71d54f9e293a562e07ada3e32703196a6a Author: Karel Zak Date: Fri Nov 7 11:35:12 2025 +0100 cal: improve header color printing It's more robust to avoid using line breaks within the colored area. Fixes: https://github.com/util-linux/util-linux/issues/3844 Signed-off-by: Karel Zak misc-utils/cal.c | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) commit abfce923bb66aa2a95264867e34ca5051031452b Author: Karel Zak Date: Mon Nov 3 13:41:31 2025 +0100 include/optutils: improve err_exclusive_options() output OLD: $ losetup --remove --detach loop0 losetup: mutually exclusive arguments: --detach-all --all --set-capacity --detach --find --associated --remove NEW: $ losetup --remove --detach loop0 losetup: options --detach and --remove cannot be combined. Suggested-by: Benno Schulenberg Signed-off-by: Karel Zak include/optutils.h | 45 +++++++++++++++++++++++++++------------------ 1 file changed, 27 insertions(+), 18 deletions(-) commit 21cdb170b850be964ceb7a02f96efb6a035b8be1 Author: Karel Zak Date: Fri Nov 7 10:28:14 2025 +0100 lsmem: use xstrncpy() Signed-off-by: Karel Zak sys-utils/lsmem.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 3b9ec52f3b89ffe8f93e3b3699375a38c194023f Author: Sumanth Korikkar Date: Thu Oct 16 17:38:06 2025 +0200 lsmem,chmem: add configure/deconfigure bash completion options Add bash completion for configure/deconfigure options in chmem and lsmem. Signed-off-by: Sumanth Korikkar bash-completion/chmem | 3 +++ bash-completion/lsmem | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) commit 6f1e4ff0545d5ee3a3b4a8358fd28e49721861fa Author: Sumanth Korikkar Date: Thu Oct 16 17:38:05 2025 +0200 lsmem: add doc for dynamic (de)configuration and memmap-on-memory support lsmem --output-all now displays two new columns: CONFIGURED : yes/no indicating if a memory block has been explicitly configured. MEMMAP-ON-MEMORY : yes/no indicating whether the block uses memmap-on-memory. lsmem -o RANGE,SIZE,STATE,BLOCK,CONFIGURED,MEMMAP-ON-MEMORY RANGE SIZE STATE BLOCK CONFIGURED MEMMAP-ON-MEMORY 0x00000000-0x7fffffff 2G online 0-15 yes no 0x80000000-0xffffffff 2G offline 16-31 no yes Memory block size: 128M Total online memory: 2G Total offline memory: 2G Memmap on memory parameter: yes Add documentation for new fields. Reviewed-by: Maria Eisenhaendler Signed-off-by: Sumanth Korikkar sys-utils/lsmem.1.adoc | 44 +++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 41 insertions(+), 3 deletions(-) commit e896d7b8a3ca71e1a565f7f539059fcd8b4a6251 Author: Sumanth Korikkar Date: Thu Oct 16 17:38:04 2025 +0200 chmem: add chmem documentation for dynamic (de)configuration of memory Describe chmem configure, deconfigure and memmap-on-memory options: ff18dcb19aab ("s390/sclp: Add support for dynamic (de)configuration of memory") s390 kernel no longer pre-adds all standby memory at boot. Instead, users must explicitly configure a block before it can be used for online/offline actions. At configuration time, users can dynamically decide whether to use optional memmap-on-memory for each memory block, where value of 1 allocates metadata (such as struct pages array) from the hotplug memory itself, enabling hot-add operations even under memory pressure. A value of 0 stores metadata in regular system memory, which may require additional free memory, but enables continuous physical memory across memory blocks. Add documentation to reflect the following options: * chmem --configure 128M --memmap-on-memory 1 * chmem --deconfigure 128M * chmem --enable 128M # implicitly configure memory if supported by architecture and online it * chmem --disable 128M # offline memory and implicitly deconfigure if supported by the architecture. Just like online and offline actions, memory configuration and deconfiguration can be controlled through similar options. Also, memmap-on-memory setting can be changed, only when the memory block is in deconfigured state. This means, it is usable only via --configure option. Reviewed-by: Maria Eisenhaendler Signed-off-by: Sumanth Korikkar sys-utils/chmem.8.adoc | 47 ++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 42 insertions(+), 5 deletions(-) commit bc7ff96027dfaa62c18acd4b9e5485bf875cd7ac Author: Sumanth Korikkar Date: Thu Oct 16 17:38:03 2025 +0200 chmem: add support for dynamic (de)configuration of hotplug memory Extend chmem to use the new s390 kernel interface for configuring and deconfiguring hotpluggable memory blocks, with memmap-on-memory support. Background: On s390, memmap-on-memory was introduced to ensure that the struct page array (metadata) for hotpluggable standby memory is allocated from the memory block itself. This allowed hot-add operations even under memory pressure, particularly in cases with a strong imbalance between boot-time online memory and standby memory. The original design, however, had few limitations: * All hotpluggable standby memory was added at boot. * The use of memmap-on-memory was global and static, decided at boot time. Either all standby blocks used it, or none of them did. * memmap-on-memory choice could not be changed at runtime, limiting flexibility. For example, when continuous physical memory was required later across memory blocks. The s390 kernel ff18dcb19aab ("s390/sclp: Add support for dynamic (de)configuration of memory") no longer pre-adds all standby memory at boot. Instead, users must explicitly configure a block before it can be used for online/offline actions. At configuration time, users can dynamically decide whether to use optional memmap-on-memory for each memory block, where value of 1 allocates metadata (such as struct pages array) from the hotplug memory itself, enabling hot-add operations even under memory pressure. A value of 0 stores metadata in regular system memory and enables continuous physical memory across memory blocks. s390 kernel sysfs interface to configure/deconfigure memory with memmap-on-memory support looks as shown below: 1. Configure memory echo 1 > /sys/firmware/memory/memoryX/config   2. Deconfigure memory echo 0 > /sys/firmware/memory/memoryX/config 3. Enable memmap-on-memory echo 1 > /sys/firmware/memory/memoryX/memmap_on_memory 4. Disable memmap-on-memory echo 0 > /sys/firmware/memory/memoryX/memmap_on_memory * Initial memory layout: lsmem -o RANGE,SIZE,STATE,BLOCK,CONFIGURED,MEMMAP-ON-MEMORY RANGE SIZE STATE BLOCK CONFIGURED MEMMAP-ON-MEMORY 0x00000000-0x7fffffff 2G online 0-15 yes no 0x80000000-0xffffffff 2G offline 16-31 no yes Memory block size: 128M Total online memory: 2G Total offline memory: 2G Memmap on memory parameter: yes * Configure memory with memmap-on-memory. chmem -c 128M -m 1 lsmem -o RANGE,SIZE,STATE,BLOCK,CONFIGURED,MEMMAP-ON-MEMORY RANGE SIZE STATE BLOCK CONFIGURED MEMMAP-ON-MEMORY 0x00000000-0x7fffffff 2G online 0-15 yes no 0x80000000-0x87ffffff 128M offline 16 yes yes 0x88000000-0xffffffff 1.9G offline 17-31 no yes Memory block size: 128M Total online memory: 2G Total offline memory: 2G Memmap on memory parameter: yes * Deconfigure memory chmem -g 128M lsmem -o RANGE,SIZE,STATE,BLOCK,CONFIGURED,MEMMAP-ON-MEMORY RANGE SIZE STATE BLOCK CONFIGURED MEMMAP-ON-MEMORY 0x00000000-0x7fffffff 2G online 0-15 yes no 0x80000000-0xffffffff 2G offline 16-31 no yes Memory block size: 128M Total online memory: 2G Total offline memory: 2G Memmap on memory parameter: yes * Online memory. If the memory is in deconfigured state, configure and online it. chmem -e 128M -v Memory Block 16 (0x0000000080000000-0x0000000087ffffff) configured Memory Block 16 (0x0000000080000000-0x0000000087ffffff) enabled lsmem -o RANGE,SIZE,STATE,BLOCK,CONFIGURED,MEMMAP-ON-MEMORY RANGE SIZE STATE BLOCK CONFIGURED MEMMAP-ON-MEMORY 0x00000000-0x7fffffff 2G online 0-15 yes no 0x80000000-0x87ffffff 128M online 16 yes yes 0x88000000-0xffffffff 1.9G offline 17-31 no yes Memory block size: 128M Total online memory: 2.1G Total offline memory: 1.9G Memmap on memory parameter: yes * Offline memory If the memory is in online state, then offline it and deconfigure it. chmem -d 128M -v Memory Block 16 (0x0000000080000000-0x0000000087ffffff) disabled Memory Block 16 (0x0000000080000000-0x0000000087ffffff) deconfigured lsmem -o RANGE,SIZE,STATE,BLOCK,CONFIGURED,MEMMAP-ON-MEMORY RANGE SIZE STATE BLOCK CONFIGURED MEMMAP-ON-MEMORY 0x00000000-0x7fffffff 2G online 0-15 yes no 0x80000000-0xffffffff 2G offline 16-31 no yes Memory block size: 128M Total online memory: 2G Total offline memory: 2G Memmap on memory parameter: yes Just like online and offline actions, memory configuration and deconfiguration can be controlled through similar options. Also, memmap-on-memory setting can be changed, only when the memory block is in deconfigured state. This means, it is usable only via --configure option. Signed-off-by: Sumanth Korikkar sys-utils/chmem.c | 371 +++++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 342 insertions(+), 29 deletions(-) commit 92d018a105e0b2ee6b7bafe25681de919247373d Author: Sumanth Korikkar Date: Thu Oct 16 17:38:02 2025 +0200 lsmem: add support to display dynamic (de)configuration of memory Extend lsmem to display (de)configured blocks and memmap_on_memory state. With the new s390 kernel interface (linux-next) ff18dcb19aab ("s390/sclp: Add support for dynamic (de)configuration of memory"), standby memory blocks are no longer pre-added at boot, but must be explicitly configured before being eligible for online/offline operations. At configuration time, users can also decide whether to use memmap-on-memory per block. Add CONFIGURED column : indicate if a memory block has been explicitly configured. Add MEMMAP-ON-MEMORY column : indicate if a memory block uses memmap-on-memory. memmap-on-memory reference: https://docs.kernel.org/admin-guide/mm/memory-hotplug.html Users can now inspect memory configuration state and retrieve memmap-on-memory state per block. lsmem -o RANGE,SIZE,STATE,BLOCK,CONFIGURED,MEMMAP-ON-MEMORY RANGE SIZE STATE BLOCK CONFIGURED MEMMAP-ON-MEMORY 0x00000000-0x7fffffff 2G online 0-15 yes no 0x80000000-0xffffffff 2G offline 16-31 no yes Memory block size: 128M Total online memory: 2G Total offline memory: 2G Memmap on memory parameter: yes Signed-off-by: Sumanth Korikkar sys-utils/lsmem.c | 107 ++++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 95 insertions(+), 12 deletions(-) commit 52491bde50e0afadc6e8d6f840ccd17bf4df62e0 Author: Sumanth Korikkar Date: Thu Oct 16 17:38:01 2025 +0200 lsmem: display global memmap on memory parameter Display the output of global memmap-on-memory parameter for memory hotplug. Retrieve the details via /sys/module/memory_hotplug/parameters/memmap_on_memory. lsmem RANGE SIZE STATE REMOVABLE BLOCK 0x0000000000000000-0x00000001ffffffff 8G online yes 0-63 Memory block size: 128M Total online memory: 8G Total offline memory: 0B Memmap on memory parameter: yes Signed-off-by: Sumanth Korikkar sys-utils/lsmem.1.adoc | 2 ++ sys-utils/lsmem.c | 29 +++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) commit 28e91d087ed1b9e3851bb16b129a1acda9253986 Author: cgoesche Date: Sun Nov 2 12:54:02 2025 -0500 tests: (su) add more options tests Signed-off-by: cgoesche tests/expected/su/group-primary-login | 1 + tests/expected/su/group-primary-no-login | 1 + tests/expected/su/group-supplemental-login | 1 + tests/expected/su/group-supplemental-no-login | 1 + tests/expected/su/shell-additional-args | 1 + tests/expected/su/shell-command-option | 1 + tests/ts/su/group | 78 +++++++++++++++++++++++++++ tests/ts/su/shell | 35 ++++++++++++ 8 files changed, 119 insertions(+) commit ac0147fd14b348097c82c1c89a5417b582e26bad Author: cgoesche Date: Sun Nov 2 11:55:09 2025 -0500 su: pass arguments after to shell The su(1) manpage describes how the arguments after are passed to the invoked shell. However this is empirically wrong, as option flags after are interpreted by su(1) and will eventually never be passed or yield an error that terminates the program due to an unrecognized option flag. To fix this we can change getopt(3)'s scanning mode with a '+' prefixed to 'optstring', this will make it so that getopt(3) stops processing argv elements on the first occurrence of a non-option argument, e.g. '-' or ''. Additionally, if the argument that directly follows '-' is an option flag, su(1) will assume that this argument and the ones that follow, are to be passed to a shell invoked by the root user. Addresses: https://github.com/util-linux/util-linux/pull/1809 Signed-off-by: cgoesche login-utils/su-common.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 3cd29d861d69b70ca5390596425d4906adbf0082 Author: Benno Schulenberg Date: Wed Oct 29 12:03:58 2025 +0100 losetup: (man) put the synopses in a better order, the name-giver first Also, condense the synopsis for setting up a loop device to just the essentials -- it had become so long that it was incomprehensible. Signed-off-by: Benno Schulenberg sys-utils/losetup.8.adoc | 30 +++++++++++++----------------- 1 file changed, 13 insertions(+), 17 deletions(-) commit 7e27c815979986666f78696adcfd5d13eab5df36 Author: Benno Schulenberg Date: Wed Oct 29 12:03:57 2025 +0100 losetup: remove the --verbose flag, as it doesn't actually do anything Fourteen years ago, commit c7e0925def rewrote the `losetup` tool, removing all references to the 'verbose' variable. Three years later, commit 60cb2c3720 removed the line 'verbose = 1' because the compiler complained that the variable was set but never used. Signed-off-by: Benno Schulenberg sys-utils/losetup.8.adoc | 3 --- sys-utils/losetup.c | 4 ---- 2 files changed, 7 deletions(-) commit 86f94ecda56a2af176a785fbaa26b4260c6b7b85 Author: Benno Schulenberg Date: Wed Oct 29 12:03:56 2025 +0100 losetup: sort 'O' correctly for the mutual-exclusive check to work The options need to be in strict ascending order. Signed-off-by: Benno Schulenberg sys-utils/losetup.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 56e2c86c2c7ea012b63cd896d9ca3daa34f19565 Author: Munehisa Kamata Date: Tue Oct 28 12:54:17 2025 -0700 wdctl: remove -d option leftover -d option was removed in commit f56338b43973 ("wdctl: allow to specify more than one device"), but the optstring wasn't updated at that time and wdctl can still accept the option halfway as below: $ wdctl -d wdctl: option requires an argument -- 'd' whereas it should say: wdctl: invalid option -- 'd' So update the optstring. Fixes: f56338b43973 ("wdctl: allow to specify more than one device") Signed-off-by: Munehisa Kamata sys-utils/wdctl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit b5e0a42a9bd2116cc9ed35d9d804a07603281543 Merge: 27f7eb8c8 e54b6aa63 Author: Karel Zak Date: Mon Nov 3 12:16:23 2025 +0100 Merge branch 'fix/login_manpage_grammar' of https://github.com/cgoesche/util-linux-fork * 'fix/login_manpage_grammar' of https://github.com/cgoesche/util-linux-fork: login: fix minor grammar mistake in the manpage commit 27f7eb8c8676e499699e9e128f3ea7dc486ec3be Merge: bf98326d6 278249ac7 Author: Karel Zak Date: Mon Nov 3 12:16:08 2025 +0100 Merge branch 'meson' of https://github.com/neheb/util-linux * 'meson' of https://github.com/neheb/util-linux: meson: fix non threaded toolchains commit bf98326d6c58d82be0cdbedc97e4babad2776a03 Merge: 578923fe5 3f3f72983 Author: Karel Zak Date: Mon Nov 3 12:13:26 2025 +0100 Merge branch 'bst/hwclock-cmp-set' of https://github.com/Bastian-Krause/util-linux * 'bst/hwclock-cmp-set' of https://github.com/Bastian-Krause/util-linux: hwclock: skip RTC_PARAM_SET for --param-set with unchanged value commit e54b6aa631aced38527fcae41397b5aec8fac87f Author: cgoesche Date: Sun Nov 2 22:31:40 2025 -0500 login: fix minor grammar mistake in the manpage Signed-off-by: cgoesche login-utils/login.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 278249ac779d585ba3decd09d89d5489631ffbe8 Author: Rosen Penev Date: Sun Nov 2 12:25:26 2025 -0800 meson: fix non threaded toolchains threads needs to be set as not required. Cleaned up meson build slightly to use one dependency call. Signed-off-by: Rosen Penev libuuid/meson.build | 4 +--- meson.build | 4 ++-- 2 files changed, 3 insertions(+), 5 deletions(-) commit f1f7085b8e07729365bf2e82fc9c0d8396f0f42e Author: cgoesche Date: Sat Nov 1 19:50:17 2025 -0400 bash-completion: (nsenter) add missing --follow-context Signed-off-by: cgoesche bash-completion/nsenter | 1 + 1 file changed, 1 insertion(+) commit 32a3c16efc9721d575222df783749266c2b1f9c4 Author: cgoesche Date: Sat Nov 1 19:49:33 2025 -0400 bash-completion: (namei) add missing --context Signed-off-by: cgoesche bash-completion/namei | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) commit 4f65381173406d2d6807bfb328e5cc1efd680359 Author: cgoesche Date: Sat Nov 1 19:47:03 2025 -0400 bash-completion: (setpriv) add missing long options Signed-off-by: cgoesche bash-completion/setpriv | 3 +++ 1 file changed, 3 insertions(+) commit 3b9f287a8c5b2f561bd6bbc7a4b4fe2a8e797f6b Author: cgoesche Date: Sat Nov 1 19:46:27 2025 -0400 bash-completion: (pg) add missing long options Signed-off-by: cgoesche bash-completion/pg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 2ce6bcc507e56b34584960e26af16b48984feb7e Author: cgoesche Date: Sat Nov 1 19:45:32 2025 -0400 bash-completion: (lastlog2) add missing --active Signed-off-by: cgoesche bash-completion/lastlog2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 6cdbe06519ebc235c3d0fbb8e0092ffc8abf0ce6 Author: Thomas Weißschuh Date: Sat Nov 1 14:58:34 2025 +0100 fincore: do not fall back to mincore if cachestat fails with EPERM cachestat() and mincore() both require that the tested file is (potentially) writable by the current user. If this permission check fails, cachestat() will return EPERM while mincore() will simply mark all pages as resident in core, as a proper EPERM would violate its API contract. But when cachestat() fails with EPERM we know that mincore() will not return real data, so instead show an error message. Reported-by: Christian Hesse Signed-off-by: Thomas Weißschuh misc-utils/fincore.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 906f1b7a779b29f7b8b3d1021d8ded8a3c9b493a Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat Nov 1 18:05:54 2025 +0000 build(deps): bump actions/upload-artifact from 4 to 5 Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4 to 5. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] .github/workflows/cifuzz.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 58684fa95032c37c50129d92f94b2305f540e20f Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat Nov 1 18:05:45 2025 +0000 build(deps): bump github/codeql-action from 3 to 4 Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3 to 4. - [Release notes](https://github.com/github/codeql-action/releases) - [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md) - [Commits](https://github.com/github/codeql-action/compare/v3...v4) --- updated-dependencies: - dependency-name: github/codeql-action dependency-version: '4' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] .github/workflows/codeql.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit a8835586c23f8906952481e1b96611e1f9b4c62f Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:25:29 2025 -0400 bash-completion: (whereis) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/whereis | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 56344d2c9a97d393ac8f6de366cb5bfac11659f6 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:24:54 2025 -0400 bash-completion: (wdctl) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/wdctl | 2 ++ 1 file changed, 2 insertions(+) commit 347dbbdc6498d6df8fdeb8aa5d6f967edaa6d833 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:24:12 2025 -0400 bash-completion: (uuidd) add missing --cont-clock Signed-off-by: Christian Goeschel Ndjomouo bash-completion/uuidd | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) commit 49eff4652d4dcb71766727ce9eb0359ba6e8ced5 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:22:46 2025 -0400 bash-completion: (unshare) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/unshare | 7 +++++++ 1 file changed, 7 insertions(+) commit b0390e6291c021cef7fbb62a4ac458b65b1ee67a Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:21:14 2025 -0400 bash-completion: (swapon) add missing --options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/swapon | 1 + 1 file changed, 1 insertion(+) commit 154ac6ad9eb4466be9ff81202400db5cab841cad Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:20:24 2025 -0400 bash-completion: (sfdisk) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/sfdisk | 5 +++++ 1 file changed, 5 insertions(+) commit 378c96795598ebda2d28ff4c2725ece1bd7e0ed7 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:18:58 2025 -0400 bash-completion: (setsid) add missing --fork Signed-off-by: Christian Goeschel Ndjomouo bash-completion/setsid | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit be76d195af3ea6df20e58a864e20cc457c485278 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:18:32 2025 -0400 bash-completion: (scriptlive) add missing --echo Signed-off-by: Christian Goeschel Ndjomouo bash-completion/scriptlive | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) commit fb2ca61fa6eb029d771dcae80ee9bb765d176f82 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:17:05 2025 -0400 bash-completion: (renice) add missing --relative Signed-off-by: Christian Goeschel Ndjomouo bash-completion/renice | 1 + 1 file changed, 1 insertion(+) commit 3ff74d751992262ac93a07bdc57af757d85b7709 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:16:21 2025 -0400 bash-completion: (more) add missing --exit-on-eof Signed-off-by: Christian Goeschel Ndjomouo bash-completion/more | 1 + 1 file changed, 1 insertion(+) commit 908bf9e4caf479ec7855523354ff0ad44cb145a1 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:15:58 2025 -0400 bash-completion: (mkswap) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/mkswap | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) commit fdc77706a249c3247ed91d0469617e2d354e2fd9 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:14:53 2025 -0400 bash-completion: (mkfs.minix) add missing --lock Signed-off-by: Christian Goeschel Ndjomouo bash-completion/mkfs.minix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 72b8c115c7ec716eb7df893bc60845da04c698e4 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:14:24 2025 -0400 bash-completion: (mkfs.cramfs) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/mkfs.cramfs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit d7d9a98865023f5ada70f8a4fd876578033c9d69 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:13:50 2025 -0400 bash-completion: (mkfs.bfs) add missing --lock Signed-off-by: Christian Goeschel Ndjomouo bash-completion/mkfs.bfs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 1c5bdd8638986957bfa35a0c520440e74d4564eb Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:12:56 2025 -0400 bash-completion: (lsmem) add missing --split Signed-off-by: Christian Goeschel Ndjomouo bash-completion/lsmem | 1 + 1 file changed, 1 insertion(+) commit 8976325fbbb344312cbff09067b651eea6d3e126 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:12:32 2025 -0400 bash-completion: (lslogins) add missing --shell Signed-off-by: Christian Goeschel Ndjomouo bash-completion/lslogins | 1 + 1 file changed, 1 insertion(+) commit e31f075b5b63928b7cb33f916e6bb8dcef6affed Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:11:59 2025 -0400 bash-completion: (lscpu) add missing --hierarchic Signed-off-by: Christian Goeschel Ndjomouo bash-completion/lscpu | 1 + 1 file changed, 1 insertion(+) commit 43105e32f07b35f53e1615a9627bdf84f7eeed5e Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:11:29 2025 -0400 bash-completion: (lsclocks) add missing --no-discover-dynamic Signed-off-by: Christian Goeschel Ndjomouo bash-completion/lsclocks | 1 + 1 file changed, 1 insertion(+) commit 735da1b9cd4131d042e593f1c01f45199ef549ee Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:10:58 2025 -0400 bash-completion: (lsblk) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/lsblk | 5 +++++ 1 file changed, 5 insertions(+) commit 75213a646be5183bcb07558432014211f0b3c0d0 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:10:19 2025 -0400 bash-completion: (losetup) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/losetup | 3 +++ 1 file changed, 3 insertions(+) commit 2d5e6592c3de8103e4aa2a6de343a3676b535249 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 13:09:51 2025 -0400 bash-completion: (hwclock) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/hwclock | 2 ++ 1 file changed, 2 insertions(+) commit fec4066b73483523282a283932b4fe17e8aa012d Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 12:48:04 2025 -0400 bash-completion: (hardlink) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/hardlink | 9 +++++++++ 1 file changed, 9 insertions(+) commit e84a692a4da69caee88d141b45518cfe36dc7bc6 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 12:44:30 2025 -0400 bash-completion: (getopt) add missing --unknown Signed-off-by: Christian Goeschel Ndjomouo bash-completion/getopt | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) commit ed442ddba1969ba826a4e07ccebac6e797d54d82 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 12:43:29 2025 -0400 bash-completion: (fsck) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/fsck | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 93d0a87cb93f90c137cfda0242703cd3eba0b692 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 12:41:25 2025 -0400 bash-completion: (flock) add missing --verbose Signed-off-by: Christian Goeschel Ndjomouo bash-completion/flock | 1 + 1 file changed, 1 insertion(+) commit 9eb659f100276f4398d404db4b6a740a24114209 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 12:40:58 2025 -0400 bash-completion: (findmnt) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/findmnt | 9 +++++++++ 1 file changed, 9 insertions(+) commit 1188191acace5f39be8732164ea01274b2913586 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 12:38:26 2025 -0400 bash-completion: (fincore) add missing --total Signed-off-by: Christian Goeschel Ndjomouo bash-completion/fincore | 1 + 1 file changed, 1 insertion(+) commit 88e4b6f8bfd188b210ffcda10ecb4a1034c412c7 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 12:35:05 2025 -0400 bash-completion: (fallocate) add missing --write-zeroes Signed-off-by: Christian Goeschel Ndjomouo bash-completion/fallocate | 1 + 1 file changed, 1 insertion(+) commit a972e9eb5219e88d2cab0f1a49e0910125c46d6b Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 12:33:57 2025 -0400 bash-completion: (fadvise) add missing --fd Signed-off-by: Christian Goeschel Ndjomouo bash-completion/fadvise | 1 + 1 file changed, 1 insertion(+) commit cd510de78c710907bf1281f44e040f8b1ab8090a Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 12:32:59 2025 -0400 fadvise: add --fd to the help output Signed-off-by: Christian Goeschel Ndjomouo misc-utils/fadvise.c | 1 + 1 file changed, 1 insertion(+) commit d934a6e29420511b77ab18a4133e52ebc7b00724 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 12:27:27 2025 -0400 bash-completion: (column) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/column | 2 ++ 1 file changed, 2 insertions(+) commit 1730170815d5839064e45bf6fe2c5e432ea6d0e4 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 12:26:04 2025 -0400 bash-completion: (cfdisk) add missing --sector-size Signed-off-by: Christian Goeschel Ndjomouo bash-completion/cfdisk | 1 + 1 file changed, 1 insertion(+) commit 81bca2b4f468c77fe7c3645f217338363ed33490 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 12:24:20 2025 -0400 bash-completion: (cal) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/cal | 3 +++ 1 file changed, 3 insertions(+) commit 5dfd142c99f927ed36e05e7b0f447003a69ff674 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 12:17:31 2025 -0400 bash-completion: (blockdev) add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/blockdev | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit 0351a75782244af9d7c297801ba9fa472fe930c5 Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 12:16:22 2025 -0400 bash-completion: (blkid) add missing --hint Signed-off-by: Christian Goeschel Ndjomouo bash-completion/blkid | 1 + 1 file changed, 1 insertion(+) commit e4c5943860305dba3de21d55c4c7573e3692dabe Author: Christian Goeschel Ndjomouo Date: Fri Oct 31 12:14:38 2025 -0400 bash-completion: (bits) add missing --binary Signed-off-by: Christian Goeschel Ndjomouo bash-completion/bits | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 578923fe582903628ecc0d2a434af0affa3660d2 Author: Karel Zak Date: Thu Oct 30 12:11:43 2025 +0100 libfdisk: (dos) fix off-by-one in maximum last sector calculation The get_disk_ranges() function incorrectly capped the last usable sector at UINT_MAX, which could cause an overflow when calculating partition size for MBR partition tables. MBR stores partition size as a 32-bit value with maximum UINT_MAX. The partition size is calculated as: size = stop - start + 1 For a partition starting at sector 0: - If stop = UINT_MAX: size = UINT_MAX + 1 (overflow!) - If stop = UINT_MAX - 1: size = UINT_MAX (correct maximum) This fixes the inconsistency where dos_init() correctly warns about disks larger than UINT_MAX sectors (2TiB - 512 bytes for 512-byte sectors), but get_disk_ranges() allowed creating partitions that would overflow the 32-bit size field. Addresses: https://issues.redhat.com/browse/RHEL-122367 Signed-off-by: Karel Zak libfdisk/src/dos.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 3f3f7298347c88cc5e2265f949d60bc40e0d0ebe Author: Bastian Krause Date: Fri Oct 24 17:32:20 2025 +0200 hwclock: skip RTC_PARAM_SET for --param-set with unchanged value Parameters set with `hwclock --param-set` tend to be persisted in the RTC's EEPROM. Writing the same value over and over again can wear out the EEPROM (e.g. on each boot). So read the current value first. Only if the parameter is changed, actually write the new value. This allows for easier integrations, especially since there is no machine-readable way of retrieving the current value via hwclock. Signed-off-by: Bastian Krause sys-utils/hwclock-rtc.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) commit 7492ca660b235cfea5cf78f1c3d5f0dc4e535545 Merge: 90bdde775 a268328ac Author: Karel Zak Date: Wed Oct 29 11:57:33 2025 +0100 Merge branch 'issuerunfix' of https://github.com/Vogtinator/util-linux * 'issuerunfix' of https://github.com/Vogtinator/util-linux: agetty: Fix reading /run/issue.d/ again commit 90bdde77514e8477038e54939b28ebf5ebdff1fd Merge: 9addb47e4 47344ed61 Author: Karel Zak Date: Wed Oct 29 11:57:05 2025 +0100 Merge branch 'my-master-2' of https://github.com/Leefancy/util-linux * 'my-master-2' of https://github.com/Leefancy/util-linux: Fix memory leak issue in read_Subid_range() commit 9addb47e43ea3396e0c69f42b3d8f88d7ee5a3b6 Merge: b2d5ade2f 79c3fabf0 Author: Karel Zak Date: Wed Oct 29 11:56:42 2025 +0100 Merge branch 'swapon-fstab-defaults' of https://github.com/zeha/util-linux * 'swapon-fstab-defaults' of https://github.com/zeha/util-linux: swapon: (man page) use "defaults" (plural) commit a268328ac23588065ea7a8bf4b457f2d9147d130 Author: Fabian Vogt Date: Tue Oct 28 11:19:17 2025 +0100 agetty: Fix reading /run/issue.d/ again Commit 63f7dcb5b072 ("lib/config: Make /run path configurable") added a second _PATH_SYSCONFDIR instead of _PATH_RUNSTATEDIR. Fix that. term-utils/agetty.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit b2d5ade2fe23664bc0b46ce34ad634fcae645b00 Author: Karel Zak Date: Thu Oct 23 12:34:08 2025 +0200 lib/loopdev: avoid null pointer dereferences [coverity] Signed-off-by: Karel Zak lib/loopdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 47344ed614cb6adfbf9e0eec7f7c18a672e1057b Author: fortunate-lee Date: Thu Oct 23 15:01:31 2025 +0800 Fix memory leak issue in read_Subid_range() sys-utils/unshare.c | 1 + 1 file changed, 1 insertion(+) commit 79c3fabf03a3a817db4b8e078b9c373083a2efda Author: Chris Hofstaedtler Date: Wed Oct 22 17:55:33 2025 +0200 swapon: (man page) use "defaults" (plural) A lot of documentation on the Internet seems to assume "defaults" is the /correct/ default value when no other options are intended. Documentation/example.files/fstab does not have an entry for swap, but it shows "defaults" for other file systems. It seems prudent to align on a single variant, at least in the documentation, even if both are accepted by swapon. Signed-off-by: Chris Hofstaedtler sys-utils/swapon.8.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 942bd13e8089c40dc74bad293c7fb95032d2f658 Merge: 11ca5a90f 468b97554 Author: Karel Zak Date: Wed Oct 22 11:25:01 2025 +0200 Merge branch 'optstr-test' of https://github.com/crobinso/util-linux * 'optstr-test' of https://github.com/crobinso/util-linux: tests: optstr: test redundant commas commit 11ca5a90f2f345e7831fb991f1ddf5c5da2b0f77 Merge: d59e09cc0 787f8251b Author: Karel Zak Date: Wed Oct 22 11:24:14 2025 +0200 Merge branch 'PR/losetup-remove' of https://github.com/karelzak/util-linux-work * 'PR/losetup-remove' of https://github.com/karelzak/util-linux-work: losetup: improve command line option processing lostup: report EACCES on loop-control losetup: improve --remove documentation losetup: make --remove a long-only option with mutual exclusivity lib/loopdev: introduce loopcxt_get_device_nr() helper losetup: add error feedback for --remove command commit d59e09cc0fb98268196cbf48080a74094e69d1a6 Author: Karel Zak Date: Wed Oct 22 10:42:36 2025 +0200 mount: add note about systemd and --all historical context Add information that mount -a was originally designed for init scripts but many modern systemd-based distributions use systemd units instead for mounting filesystems on boot in a more sophisticated way. Signed-off-by: Karel Zak sys-utils/mount.8.adoc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit be33a6786b82dc456be347d2b366661100101793 Author: Karel Zak Date: Wed Oct 22 10:36:32 2025 +0200 mount: improve --all documentation regarding swap areas The --all option description did not mention that swap entries in fstab are silently ignored. Add a note clarifying this behavior and pointing users to swapon --all for enabling swap devices and files. Signed-off-by: Karel Zak sys-utils/mount.8.adoc | 2 ++ 1 file changed, 2 insertions(+) commit 787f8251b539ad6c3cd1098ab155980afe611867 Author: Karel Zak Date: Tue Oct 21 11:45:54 2025 +0200 losetup: improve command line option processing The options --detach, --remove, and --set-capacity are mutually exclusive. We can assume the device name follows the options, which is better than assuming the device name is specified as an option's argument. This also allows the use of the existing mutually-exclusive check. # losetup --remove --detach loop0 losetup: /dev/--detach: remove failed: Success losetup: /dev/loop0: remove failed: Device or resource busy is ugly. Reported-by: Benno Schulenberg Signed-off-by: Karel Zak sys-utils/losetup.c | 45 ++++++++++++++++++++++----------------------- 1 file changed, 22 insertions(+), 23 deletions(-) commit 19cd36ebc2e227b2a93c70207b213da58f7be5e2 Author: Karel Zak Date: Tue Oct 21 10:58:36 2025 +0200 lostup: report EACCES on loop-control Don't start scanning /dev/loop* after a failed access to /dev/loop-control. It's a waste of time, and the user does not receive a relevant error message. Signed-off-by: Karel Zak lib/loopdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 7190e6a44e366f4daddad0930500de49f402c60e Author: Karel Zak Date: Thu Oct 16 12:16:27 2025 +0200 losetup: improve --remove documentation Rewrite the --remove option description to clearly explain the difference between --detach and --remove. Add a new LOOP DEVICE LIFECYCLE section that describes the three stages: creation, detachment, and removal, with corresponding ioctl names. Signed-off-by: Karel Zak sys-utils/losetup.8.adoc | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) commit 8008075ce50114478cc1d4c9411e9a2439cac6bf Author: Karel Zak Date: Thu Oct 16 11:56:08 2025 +0200 losetup: make --remove a long-only option with mutual exclusivity Change --remove from '-R, --remove' to a long-only option '--remove'. This makes it consistent with other administrative options and adds mutual exclusivity with other major actions like -d, -D, -a, -c, -f, -j, -l, and -O. Signed-off-by: Karel Zak bash-completion/losetup | 3 ++- sys-utils/losetup.8.adoc | 4 ++-- sys-utils/losetup.c | 17 +++++++++-------- 3 files changed, 13 insertions(+), 11 deletions(-) commit 04619aacdb31ecdf451f07fa2cf93b67387c1638 Author: Karel Zak Date: Thu Oct 16 11:42:03 2025 +0200 lib/loopdev: introduce loopcxt_get_device_nr() helper Add a new static helper function loopcxt_get_device_nr() to extract the loop device number from the device path. This eliminates code duplication in loopcxt_remove_device() and loopcxt_add_device(). The helper function supports both /dev/loop and /dev/loop/ formats and provides consistent error handling with debug logging. Signed-off-by: Karel Zak lib/loopdev.c | 57 +++++++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 43 insertions(+), 14 deletions(-) commit 7b62b2dd72d4f004e66234cc63abf8da94e1926e Author: Karel Zak Date: Thu Oct 16 11:22:47 2025 +0200 losetup: add error feedback for --remove command The remove_loop() function was silently failing without providing any feedback to the user. This also fixes incorrect indentation (spaces instead of tabs). Signed-off-by: Karel Zak Reported-by: Benno Schulenberg sys-utils/losetup.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) commit 468b97554107a9be2d43bdce9ee12862b1520e2f Author: Cole Robinson Date: Fri Oct 17 11:11:38 2025 -0400 tests: optstr: test redundant commas optstr, used for parsing mount option lists, eats leading, trailing, and duplicated commas, but I can't find any test coverage for that behavior. Amend the existing optstr test to hit all the cases I can think of Signed-off-by: Cole Robinson tests/ts/misc/optstr | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 7f0f877672b7189f20a2429b323ddd475e5d8acd Author: Karel Zak Date: Wed Oct 15 15:46:06 2025 +0200 treewide: use is_dotdir_dirent() helper This simplifies the code by using the is_dotdir_dirent() helper function instead of manual strcmp() checks for "." and ".." directory entries across multiple utilities. Signed-off-by: Karel Zak disk-utils/partx.c | 4 ++-- lib/loopdev.c | 6 ++---- libsmartcols/samples/tree.c | 3 ++- misc-utils/whereis.c | 3 ++- sys-utils/eject.c | 3 ++- sys-utils/switch_root.c | 3 ++- 6 files changed, 12 insertions(+), 10 deletions(-) commit 001f3a6d69403db2ec8a375a3255e4b5d1369890 Author: Karel Zak Date: Wed Oct 15 15:30:06 2025 +0200 tests: (configs) add sorting and masking test Add a new test that verifies: - Main config file appears first - Drop-in files are sorted alphabetically - Files from /etc mask same-named files from /usr - Priority ordering is correct (etc > usr) The test creates mmm.conf in both /etc and /usr to verify that the /etc version takes precedence and /usr version is masked (not included in output). Signed-off-by: Karel Zak tests/expected/misc/configs-sorting | 12 ++++++++++++ tests/ts/misc/configs | 20 ++++++++++++++++++++ 2 files changed, 32 insertions(+) commit 7609cb258d4975e49b020860f8ebba6feb5f2354 Author: Karel Zak Date: Wed Oct 15 15:18:05 2025 +0200 lib/configs: simplify merge error checking Combine the three config_merge_list() calls into a single conditional statement to reduce repetitive error checking. The calls are short-circuited on first failure. Signed-off-by: Karel Zak lib/configs.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) commit dad16046185ab4d1d6e2603919acc7b67e6f032e Author: Karel Zak Date: Wed Oct 15 15:15:02 2025 +0200 lib/configs: eliminate counter variable Remove the counter variable and return list_count_entries() directly. This simplifies the code by calculating the count only when needed (on success path) rather than tracking it throughout the function. Signed-off-by: Karel Zak lib/configs.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) commit 06805e9ec8db3cffeead4c64a211fd6692cd6cab Author: Karel Zak Date: Wed Oct 15 15:11:25 2025 +0200 lib/configs: add head parameter to configs_refer_filename() Allow configs_refer_filename() to add entries at either the head or tail of the list by adding a 'head' parameter. This simplifies the code for adding the main config file, eliminating the need to add to the tail and then move to the head. When head=1, use list_add() to prepend to the list. When head=0, use list_add_tail() to append to the list. Signed-off-by: Karel Zak lib/configs.c | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) commit bd34d1c085cdd0ed56718638d02f86c9d356e05e Author: Karel Zak Date: Wed Oct 15 15:04:24 2025 +0200 lib/configs: simplify variable names Shorten variable and parameter names for better readability: Parameters: - etc_subdir -> etcdir - run_subdir -> rundir - usr_subdir -> usrdir - config_name -> confname - config_suffix -> suffix Local variables: - etc_file_list -> etc_list - run_file_list -> run_list - usr_file_list -> usr_list Signed-off-by: Karel Zak include/configs.h | 10 +++---- lib/configs.c | 84 +++++++++++++++++++++++++++---------------------------- 2 files changed, 47 insertions(+), 47 deletions(-) commit c8a753137f654d2b0a3c4b194e388f9f0f844f56 Author: Karel Zak Date: Wed Oct 15 14:59:44 2025 +0200 lib/configs: merge new_list_entry() and configs_add_filename() Introduce configs_refer_filename() which merges the functionality of new_list_entry() and configs_add_filename() while avoiding unnecessary string duplication. The new function takes ownership of the filename pointer directly instead of using strdup(), which eliminates one allocation per config file entry. Callers no longer need to free the filename after adding it to the list, as ownership is transferred to the list element. This improves both performance and code clarity by making the ownership semantics explicit. Signed-off-by: Karel Zak lib/configs.c | 42 ++++++++++++------------------------------ 1 file changed, 12 insertions(+), 30 deletions(-) commit 9ff054b2d3253d43bc50082e1fa979e92d91d702 Author: Karel Zak Date: Wed Oct 15 14:52:29 2025 +0200 lib/configs: refactor directory list merging The original implementation used complex nested loops to merge configuration file lists from different directories. This commit simplifies the code by introducing a new config_merge_list() function that handles the merging logic. Changes: - Add config_merge_list() to merge lists with duplicate detection - Add config_cmp() comparison function using strcoll() (consistent with alphasort() behavior from scandirat()) - Add configs_add_filename() helper to reduce code duplication - Simplify ul_configs_file_list() by replacing ~120 lines of merging logic with 3 calls to config_merge_list() - Remove intermediate etc_run_file_list, merge directly to output - Update read_dir() to return 0/-ENOMEM instead of entry count - Use list_count_entries() to get final count The new config_merge_list() moves entries directly from source lists to the destination list without extra allocations, making it more efficient than the previous approach. Signed-off-by: Karel Zak lib/configs.c | 243 +++++++++++++++++++++++++--------------------------------- 1 file changed, 103 insertions(+), 140 deletions(-) commit 3c8321ac7c7c26505424ae7a432b345b6ab5b139 Author: Karel Zak Date: Wed Oct 15 11:48:26 2025 +0200 update .gitignore Signed-off-by: Karel Zak .gitignore | 1 + 1 file changed, 1 insertion(+) commit d2ac69cc315d8e20fd880d5fcf17ee6a2767bfc7 Author: Karel Zak Date: Wed Oct 15 11:34:26 2025 +0200 tests: (configs) check for scandirat() The function may be unsupported on musl libc. Signed-off-by: Karel Zak tests/helpers/test_sysinfo.c | 13 +++++++++++++ tests/ts/misc/configs | 2 ++ 2 files changed, 15 insertions(+) commit bb65b1701399bb7f9148a4cac56a8158ad369125 Author: Karel Zak Date: Wed Oct 15 10:32:26 2025 +0200 lib/configs: simplify suffix verification Use ul_endswith() to simplify the code. Signed-off-by: Karel Zak lib/configs.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) commit 086f4946eb6a312fb1205997bca03423307e4d0d Author: Karel Zak Date: Wed Oct 15 10:30:34 2025 +0200 lib/fileutils: add is_dotdir_dirent() This code pattern is repeated on many places, let's move it to simple inline function. Signed-off-by: Karel Zak include/fileutils.h | 8 ++++++++ 1 file changed, 8 insertions(+) commit 44ae940082e702451976f4c07c6b054ca505eb04 Author: Karel Zak Date: Tue Oct 14 13:20:42 2025 +0200 tests: (configs) add file listings to expected output Add sorted file listings to the configs test output to help debug platform-specific test failures. Each subtest now outputs the actual files created in the test directory before running the config helper, making it easier to identify issues with filesystem ordering or file creation problems. Signed-off-by: Karel Zak tests/expected/misc/configs-combined | 4 ++++ tests/expected/misc/configs-dropin-etc | 2 ++ tests/expected/misc/configs-dropin-usr | 2 ++ tests/expected/misc/configs-main-etc | 1 + tests/expected/misc/configs-main-usr | 1 + tests/expected/misc/configs-masking | 2 ++ tests/expected/misc/configs-no-project | 1 + tests/ts/misc/configs | 7 +++++++ 8 files changed, 20 insertions(+) commit f44c01a77a95a38920740a3abb5713a537a0bac4 Author: Karel Zak Date: Tue Oct 14 12:59:05 2025 +0200 lib/config: fix file counter We need to count only files in the final list, not in the temporary lists. Signed-off-by: Karel Zak lib/configs.c | 3 --- tests/expected/misc/configs-combined | 2 +- tests/expected/misc/configs-dropin-etc | 2 +- tests/expected/misc/configs-masking | 2 +- 4 files changed, 3 insertions(+), 6 deletions(-) commit 1f22c17aee88dae6e71b5e2da47e32d8b745f297 Author: Karel Zak Date: Thu Oct 9 22:19:40 2025 +0200 lib/configs: introduce config_mk_path() helper Refactor main_configs() and read_dir() to use a new helper function that combines path construction with existence and type checking. This reduces code duplication and simplifies the logic. Signed-off-by: Karel Zak lib/configs.c | 96 ++++++++++++++++++++++++++++------------------------------- 1 file changed, 46 insertions(+), 50 deletions(-) commit 7ab32489bf93f6fff6d2164a177a09ae0a147979 Author: Karel Zak Date: Thu Oct 9 22:04:19 2025 +0200 tests: add regression tests for ul_configs_file_list() Add comprehensive test script for configuration file list functionality with the following test cases: - main-etc: Main config file in /etc - main-usr: Main config file fallback to /usr - dropin-etc: Drop-in files from /etc - dropin-usr: Drop-in files from /usr - combined: Main config + drop-ins from multiple directories - masking: Same basename in multiple directories (masking behavior) - no-project: Configuration without project subdirectory The tests verify proper file discovery, priority ordering across /etc, /run, and /usr directories, and file masking behavior according to the Configuration Files Specification. Signed-off-by: Karel Zak tests/commands.sh | 1 + tests/expected/misc/configs-combined | 5 ++ tests/expected/misc/configs-dropin-etc | 3 + tests/expected/misc/configs-dropin-usr | 3 + tests/expected/misc/configs-main-etc | 2 + tests/expected/misc/configs-main-usr | 2 + tests/expected/misc/configs-masking | 2 + tests/expected/misc/configs-no-project | 2 + tests/ts/misc/configs | 109 +++++++++++++++++++++++++++++++++ 9 files changed, 129 insertions(+) commit 3d57b9059a94c9e0ab6529fad3d24778086ee8ab Author: Karel Zak Date: Thu Oct 9 22:02:24 2025 +0200 lib/configs: add test program for ul_configs_file_list() Add a test program with command line options to test the configuration file list functionality. The test program allows specifying custom paths for /etc, /run, and /usr directories, project name, config name, and suffix. This enables testing the priority ordering and file discovery logic of ul_configs_file_list() from the command line. Signed-off-by: Karel Zak lib/Makemodule.am | 5 ++++ lib/configs.c | 83 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ meson.build | 11 ++++++++ 3 files changed, 99 insertions(+) commit 63f7dcb5b0726ef7d0a493cedb2d7d66b41c9e6a Author: Karel Zak Date: Thu Oct 9 20:35:26 2025 +0200 lib/config: Make /run path configurable Avoid hardcoded paths when writing regression tests. Signed-off-by: Karel Zak include/configs.h | 1 + lib/configs.c | 8 +++++--- term-utils/agetty.c | 1 + 3 files changed, 7 insertions(+), 3 deletions(-) commit 3617faadce772a5018a255acd9dcc8d35e5419d8 Merge: 2e866455b 24478afdf Author: Karel Zak Date: Tue Oct 14 10:58:08 2025 +0200 Merge branch 'fix/umount_no_verbose_for_non_root' of https://github.com/cgoesche/util-linux-fork * 'fix/umount_no_verbose_for_non_root' of https://github.com/cgoesche/util-linux-fork: umount: consider helper return status for success message commit 2e866455bfe35ca05bc4759065586d1718656b4a Merge: 87277a5c2 305e05e95 Author: Karel Zak Date: Tue Oct 14 10:54:14 2025 +0200 Merge branch 'test--lsfd-revise-rpi5' of https://github.com/masatake/util-linux * 'test--lsfd-revise-rpi5' of https://github.com/masatake/util-linux: tests: (lsfd/mkfds-unix-dgram) skip if the unix diag netlink interface is not available tests: (lsfd-functions.sh) make lsfd_check_sockdiag usable in subtests tests: (lsfd/mkfds-unix-stream-requiring-sockdiag) revise the test description commit 87277a5c2c685fa51ba0b211f45d5cb2c9875c58 Merge: 5034323c6 95f3fbfc4 Author: Karel Zak Date: Tue Oct 14 10:52:31 2025 +0200 Merge branch 'fix/test_libmount_explicit_rw' of https://github.com/cgoesche/util-linux-fork * 'fix/test_libmount_explicit_rw' of https://github.com/cgoesche/util-linux-fork: tests: (libmount) improve explicit loop read-write mount check commit 5034323c6fb85e43f7abb8275c695954d8bf2658 Merge: 1af78a5ac acdd6d51f Author: Karel Zak Date: Tue Oct 14 10:45:14 2025 +0200 Merge branch 'fix/mount_bash_comp' of https://github.com/cgoesche/util-linux-fork * 'fix/mount_bash_comp' of https://github.com/cgoesche/util-linux-fork: bash-completion: (mount) add missing options commit 1af78a5ace4e40829beac2f3c1d19ef03d89a93e Merge: c97ca5ec1 939168144 Author: Karel Zak Date: Tue Oct 14 10:43:13 2025 +0200 Merge branch 'feat/add_json_opt_lslogins' of https://github.com/cgoesche/util-linux-fork * 'feat/add_json_opt_lslogins' of https://github.com/cgoesche/util-linux-fork: bash-completion: (lslogins) add --list-columns option lslogins: (man) add --list-columns description lslogins: add -H and --list-columns option; declutter --help output lslogins: (man) add --json information bash-completion: (lslogins) add --json completion tests: (lslogins) test --json output mode lslogins: add JSON output format mode commit c97ca5ec1ca964c81378a8ac85aa9b117b117b09 Merge: 3610933be 92b82b9a0 Author: Karel Zak Date: Tue Oct 14 10:38:07 2025 +0200 Merge branch 'feat/add_usage_list_cols_option_macro' of https://github.com/cgoesche/util-linux-fork * 'feat/add_usage_list_cols_option_macro' of https://github.com/cgoesche/util-linux-fork: treewide: consolidate --list-columns option in usage() to USAGE_LIST_COLUMNS_OPTION() include/c.h: add USAGE_LIST_COLUMNS_OPTION() macro commit 3610933be25b0a13a2b4409056dc58fb9bf063d8 Merge: 198d7e5a8 8c7e8c217 Author: Karel Zak Date: Tue Oct 14 10:35:26 2025 +0200 Merge branch 'tests--kill-make-test-bits' of https://github.com/masatake/util-linux * 'tests--kill-make-test-bits' of https://github.com/masatake/util-linux: ts/kill/decode: compare decoded output in an architecture-independent way ts/kill/decode: check the availability of "sed" ts/kill/decode: consider arch dependent signum/name association commit 198d7e5a80e7883157e6e0fd239fe346df18d415 Merge: 330baa59a 7873a9366 Author: Karel Zak Date: Tue Oct 14 10:32:55 2025 +0200 Merge branch 'fix/improve_dmesg_bash_comp' of https://github.com/cgoesche/util-linux-fork * 'fix/improve_dmesg_bash_comp' of https://github.com/cgoesche/util-linux-fork: bash-completion: dmesg: remove redundant completion for --buffer-size bash-completion: dmesg: complete filenames for --kmsg-file bash-completion: dmesg: add missing long options commit 330baa59ac37990a31f4fc1710217dd82f123a6f Merge: 2af05e8d2 fa9b5740f Author: Karel Zak Date: Tue Oct 14 10:29:08 2025 +0200 Merge branch 'master' of https://github.com/stanislav-brabec/util-linux * 'master' of https://github.com/stanislav-brabec/util-linux: agetty: Process all data from ul_nl_process() commit 95f3fbfc4f5584261e1ad91dba35c92673f03890 Author: Christian Goeschel Ndjomouo Date: Mon Oct 13 14:53:59 2025 -0400 tests: (libmount) improve explicit loop read-write mount check Some kernel configurations will affect default mount behavior and add extra mount options. As a result, the $TS_OUTPUT will not reliably match on all kernels. Therefore it is better to simply test whether 'rw' is an option and not write the full options list to $TS_OUTPUT. Adresses: #3765 Signed-off-by: Christian Goeschel Ndjomouo tests/expected/libmount/loop-explicit-rw | 1 - tests/ts/libmount/loop | 3 ++- 2 files changed, 2 insertions(+), 2 deletions(-) commit acdd6d51f4814bf4f4ebb0f6804fcfe296acdb29 Author: Christian Goeschel Ndjomouo Date: Mon Oct 13 13:42:17 2025 -0400 bash-completion: (mount) add missing options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/mount | 5 +++++ 1 file changed, 5 insertions(+) commit 24478afdf0a1941e9b7049ef263677f666e73c80 Author: Christian Goeschel Ndjomouo Date: Sat Oct 11 23:09:27 2025 -0400 umount: consider helper return status for success message If a helper function was executed to unmount, we simply return without any user feedback. That can unintentionally surpress verbose messages (`--verbose`) for non-root users who use udisks2 to mount filesystems, and unmount via the unmount.udisks2 helper. It would be better to check the helper return status as well for completeness and a more reliable way to test the success of the unmount operation. mnt_context_get_helper_status() is only called if the helper was executed, i.e. mnt_context_helper_executed == 1, anything else wouldnt make sense anyways. Addresses: #3790 Signed-off-by: Christian Goeschel Ndjomouo libmount/src/context_mount.c | 2 +- sys-utils/umount.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) commit 2af05e8d2794079d49d1e554a5146ce5291ba2c1 Author: Masatake YAMATO Date: Sun Oct 12 07:25:17 2025 +0900 ci: roll back the version of checkout for "build (compat, ubuntu:18.04)" With the change 28af8ed133ff15d50b5e2d644c6617d0a3e17033, we got the following error at "Post repository checkout" stage on "build (compat, ubuntu:18.04)": Post job cleanup. /usr/bin/docker exec 94db032be2efb37ea68b3ce562ce52ba3dea047f5ac970aabb7fded075116c20 sh -c "cat /etc/*release | grep ^ID" /__e/node20/bin/node: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by /__e/node20/bin/node) Signed-off-by: Masatake YAMATO .github/workflows/cibuild.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 939168144f450066d9480e05982c52befbfa74cd Author: Christian Goeschel Ndjomouo Date: Sat Oct 11 16:16:42 2025 -0400 bash-completion: (lslogins) add --list-columns option Signed-off-by: Christian Goeschel Ndjomouo bash-completion/lslogins | 1 + 1 file changed, 1 insertion(+) commit 46dca55b90f2b725da350ca0c274ecc5f5034fd3 Author: Christian Goeschel Ndjomouo Date: Sat Oct 11 16:13:58 2025 -0400 lslogins: (man) add --list-columns description Signed-off-by: Christian Goeschel Ndjomouo login-utils/lslogins.1.adoc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) commit f22ffb9793f0f4471fa2e8464ed2398ac4b68d7b Author: Christian Goeschel Ndjomouo Date: Sat Oct 11 15:46:57 2025 -0400 lslogins: add -H and --list-columns option; declutter --help output This moves the list of available columns from the --help output to the '--list-columns' option and makes the usage information more readable. Signed-off-by: Christian Goeschel Ndjomouo login-utils/lslogins.c | 40 +++++++++++++++++++++++++++++++++------- 1 file changed, 33 insertions(+), 7 deletions(-) commit 1a371ec4d8fdd17e440a2651d1459f1d75484e4e Author: Christian Goeschel Ndjomouo Date: Sat Oct 11 13:07:36 2025 -0400 lslogins: (man) add --json information Signed-off-by: Christian Goeschel Ndjomouo login-utils/lslogins.1.adoc | 3 +++ 1 file changed, 3 insertions(+) commit 39f65c91172dd5d6ae4f92f0c4c5639bd7629c7a Author: Christian Goeschel Ndjomouo Date: Sat Oct 11 12:58:25 2025 -0400 bash-completion: (lslogins) add --json completion Signed-off-by: Christian Goeschel Ndjomouo bash-completion/lslogins | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 85c7c383f9c5fa2c3480d728117ba4f4e3662ac7 Author: Christian Goeschel Ndjomouo Date: Sat Oct 11 12:40:40 2025 -0400 tests: (lslogins) test --json output mode Signed-off-by: Christian Goeschel Ndjomouo tests/expected/lslogins/json_mode | 10 ++++++++++ tests/ts/lslogins/json_mode | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) commit fb554244e2cdd9f5e787d07589ffc4939716cd0e Author: Christian Goeschel Ndjomouo Date: Sat Oct 11 11:56:30 2025 -0400 lslogins: add JSON output format mode This adds the -J and --json options that enable JSON output mode for the libsmartcols table. JSON output can be especially useful if another program wants to consume lslogins's data in an easily parse- able and language independent format. Each keys's value will be converted into an appropriate JSON data type, i.e. integers are numbers, empty values are null and others are strings. Signed-off-by: Christian Goeschel Ndjomouo login-utils/lslogins.c | 100 +++++++++++++++++++++++++++++++++---------------- 1 file changed, 67 insertions(+), 33 deletions(-) commit 92b82b9a0f2de981ff84097b9fe4be912f16218c Author: Christian Goeschel Ndjomouo Date: Fri Oct 10 20:15:51 2025 -0400 treewide: consolidate --list-columns option in usage() to USAGE_LIST_COLUMNS_OPTION() This consolidates the --list-columns description in the usage() of ls-like tools to the USAGE_LIST_COLUMNS_OPTION() macro. It makes it simplier and ensures a consistent definition. Signed-off-by: Christian Goeschel Ndjomouo lsfd-cmd/lsfd.c | 2 +- misc-utils/findmnt.c | 2 +- misc-utils/lsblk.c | 2 +- misc-utils/lslocks.c | 2 +- sys-utils/lscpu.c | 2 +- sys-utils/lsns.c | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) commit f3e0092ac4415079959bdb4ee293f8a6a7874908 Author: Christian Goeschel Ndjomouo Date: Fri Oct 10 19:17:42 2025 -0400 include/c.h: add USAGE_LIST_COLUMNS_OPTION() macro With this new macro we no longer have to redundantly specify `fputs(_(" -H, --list-columns...` in the usage() function of ls-like tools, as it will be consolidated to the USAGE_LIST_COLUMNS_OPTION() macro. USAGE_LIST_COLUMNS_OPTION() aligns the option description to the other descriptions in the usage() output in the same way as USAGE_HELP_OPTIONS(). Signed-off-by: Christian Goeschel Ndjomouo include/c.h | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) commit 8c7e8c217d416a2b3826e178293380eea76fc910 Author: Masatake YAMATO Date: Sat Oct 11 06:51:51 2025 +0900 ts/kill/decode: compare decoded output in an architecture-independent way Reported-by: John Paul Adrian Glaubitz Fixed: https://github.com/util-linux/util-linux/issues/3774 Signed-off-by: Masatake YAMATO tests/expected/kill/decode | 27 ++++++++++++++++++++++----- tests/ts/kill/decode | 15 ++++++++++++++- 2 files changed, 36 insertions(+), 6 deletions(-) commit 0d0d77cecb272d45f2a2295d5dd8af70078e0378 Author: Masatake YAMATO Date: Sat Oct 11 06:10:36 2025 +0900 ts/kill/decode: check the availability of "sed" Signed-off-by: Masatake YAMATO tests/ts/kill/decode | 2 ++ 1 file changed, 2 insertions(+) commit 7873a9366d7ef2e9f890a0b9f33de7307736cb06 Author: Christian Goeschel Ndjomouo Date: Fri Oct 10 16:48:39 2025 -0400 bash-completion: dmesg: remove redundant completion for --buffer-size The option --buffer-size already infers that its the optional argument is a size value. In addition to that, when the option is completed the user will have to delete the word 'size' from the command line and type the desired value, which is not an ideal user experience. Signed-off-by: Christian Goeschel Ndjomouo bash-completion/dmesg | 4 ---- 1 file changed, 4 deletions(-) commit 144d0dc1880b15b3d4ed8fce84820d2be1ed5abf Author: Christian Goeschel Ndjomouo Date: Fri Oct 10 16:47:01 2025 -0400 bash-completion: dmesg: complete filenames for --kmsg-file Signed-off-by: Christian Goeschel Ndjomouo bash-completion/dmesg | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 7419cae9f59c1516e32cde5c982be1d1a21e2fd7 Author: Christian Goeschel Ndjomouo Date: Fri Oct 10 16:18:29 2025 -0400 bash-completion: dmesg: add missing long options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/dmesg | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) commit eb06b44b11acc8260cbe9cbbff390b51eb6053b9 Author: Masatake YAMATO Date: Sat Oct 11 05:41:25 2025 +0900 ts/kill/decode: consider arch dependent signum/name association In the original code, the signal bits passed to the decode test were sampled on x86_64. As reported in #3774, the association between signal number and its name is architecture dependent. With this change, the test case calculates the signal bits from signal names at runtime instead of hardcoding. Reported-by: John Paul Adrian Glaubitz Link: https://github.com/util-linux/util-linux/issues/3774 Signed-off-by: Masatake YAMATO tests/expected/kill/decode | 6 +++--- tests/ts/kill/decode | 44 ++++++++++++++++++++++++++++++++++++++++---- 2 files changed, 43 insertions(+), 7 deletions(-) commit fa9b5740f67bc64d7b58f9b2fcc4f2883d7dcc91 Author: Stanislav Brabec Date: Fri Oct 10 13:17:26 2025 +0200 agetty: Process all data from ul_nl_process() However select() normally triggers immediately after a partial read, it does not happen for netlink socket. It keeps unprocessed data until the next netlink message appears. It causes raising processing delays. Always read all data. It also potentially decreases number of issue redraws. Signed-off-by: Stanislav Brabec include/netlink.h | 6 +++++- term-utils/agetty.c | 14 +++++++++++--- 2 files changed, 16 insertions(+), 4 deletions(-) commit db0efab5c3e13794ae79fcb3db8371e3af510169 Merge: 60ab2c3c3 60c5c0516 Author: Karel Zak Date: Thu Oct 9 10:20:09 2025 +0200 Merge branch 'master' of https://github.com/stanislav-brabec/util-linux * 'master' of https://github.com/stanislav-brabec/util-linux: netaddrq: Fix crash if there are no IP addresses commit 60ab2c3c3724fd2787638b14d5071851154b8a41 Merge: 39a270061 6e723400a Author: Karel Zak Date: Thu Oct 9 10:19:44 2025 +0200 Merge branch 'run_issue_d' of https://github.com/schubi2/util-linux * 'run_issue_d' of https://github.com/schubi2/util-linux: parsing /run/issue.d/* too commit 39a270061dfe0ee27b5113001dac40b7a4000c60 Merge: 83a9a2226 cfc572a53 Author: Karel Zak Date: Thu Oct 9 10:17:45 2025 +0200 Merge branch 'PR/sprintf-replace' of https://github.com/karelzak/util-linux-work * 'PR/sprintf-replace' of https://github.com/karelzak/util-linux-work: hwclock: use snprintf() instead of sprintf() lib/mbsalign: use snprintf() instead of sprintf() col: use snprintf() instead of sprintf() libfdisk: use snprintf() instead of sprintf() lsfd: use snprintf() instead of sprintf() pipesz: use snprintf() instead of sprintf() dmesg: use snprintf() instead of sprintf() lsipc: use snprintf() instead of sprintf() libblkid: use snprintf() instead of sprintf() commit 305e05e958dfa0abfb26982eb8c00a9d0f5a3dd4 Author: Masatake YAMATO Date: Thu Oct 9 15:00:31 2025 +0900 tests: (lsfd/mkfds-unix-dgram) skip if the unix diag netlink interface is not available Signed-off-by: Masatake YAMATO tests/ts/lsfd/mkfds-unix-dgram | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) commit 726995982f936e9172711f060560fe77b1709ca5 Author: Masatake YAMATO Date: Thu Oct 9 14:51:31 2025 +0900 tests: (lsfd-functions.sh) make lsfd_check_sockdiag usable in subtests Signed-off-by: Masatake YAMATO tests/ts/lsfd/lsfd-functions.bash | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) commit 817f360befa53ea20096eafd12c6077ed416b189 Author: Masatake YAMATO Date: Thu Oct 9 14:44:44 2025 +0900 tests: (lsfd/mkfds-unix-stream-requiring-sockdiag) revise the test description Signed-off-by: Masatake YAMATO tests/ts/lsfd/mkfds-unix-stream-requiring-sockdiag | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 60c5c0516e6ce52863b12343a1cd276423ab3bae Author: Stanislav Brabec Date: Wed Oct 8 01:14:32 2025 +0200 netaddrq: Fix crash if there are no IP addresses If there are no IP addresses, ul_netaddrq_bestaddr() returns threshold ULNETLINK_RATING_BAD, but there were no addresses in the best array, and best_ifaceq remains unset, which caused crash. Setting the initial threshold to __ULNETLINK_RATING_MAX and checking for that value fixes that. And more, it also allows to accept IP addresses with ULNETLINK_RATING_BAD rating. Signed-off-by: Stanislav Brabec include/netaddrq.h | 14 ++++++++++---- lib/netaddrq.c | 10 +++++----- term-utils/agetty.c | 2 +- 3 files changed, 16 insertions(+), 10 deletions(-) commit 6e723400a384c39f0df709b17af43e51c0a4f505 Author: Stefan Schubert Date: Tue Oct 7 17:24:37 2025 +0200 parsing /run/issue.d/* too lib/configs.c | 82 +++++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 72 insertions(+), 10 deletions(-) commit cfc572a53614d91183787c6daf2a1a879368444b Author: Karel Zak Date: Tue Oct 7 13:00:37 2025 +0200 hwclock: use snprintf() instead of sprintf() Signed-off-by: Karel Zak sys-utils/hwclock-parse-date.y | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 62f8363caa017741db8e5ced9c0f1e305f61c5ea Author: Karel Zak Date: Tue Oct 7 12:48:41 2025 +0200 lib/mbsalign: use snprintf() instead of sprintf() Add bufsiz parameter to mbs_safe_encode_to_buffer() and mbs_invalid_encode_to_buffer() functions to enable safe buffer operations. Track remaining buffer size internally using int variable and convert all sprintf() calls to snprintf(). Add buffer overflow protection by checking snprintf() return values and verifying sufficient space before memcpy() and direct writes. Break encoding loop early if buffer space is exhausted. This change improves code safety by preventing potential buffer overflows and makes buffer size limits explicit in the API. Signed-off-by: Karel Zak include/mbsalign.h | 4 +-- lib/buffer.c | 2 +- lib/mbsalign.c | 68 ++++++++++++++++++++++++++++++++++++++---------- libsmartcols/src/print.c | 2 +- 4 files changed, 58 insertions(+), 18 deletions(-) commit af2f3f99b90ded1481c80912744cd0a0dfa58d6b Author: Karel Zak Date: Tue Oct 7 12:12:05 2025 +0200 col: use snprintf() instead of sprintf() Signed-off-by: Karel Zak text-utils/col.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 417d8c564905dafb2522ec7f93b6bfd124a35e0f Author: Karel Zak Date: Tue Oct 7 12:10:08 2025 +0200 libfdisk: use snprintf() instead of sprintf() Signed-off-by: Karel Zak libfdisk/src/gpt.c | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) commit 952715782ae5d05934920b4d986e0c87f724b0cc Author: Karel Zak Date: Tue Oct 7 12:02:44 2025 +0200 lsfd: use snprintf() instead of sprintf() Signed-off-by: Karel Zak lsfd-cmd/sock.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 154b00c7fb26cd1b08b238048d283a69abd75b23 Author: Karel Zak Date: Tue Oct 7 11:58:55 2025 +0200 pipesz: use snprintf() instead of sprintf() Signed-off-by: Karel Zak misc-utils/pipesz.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 33d3d53139ffd43604ce598625ef87f5bcc58e57 Author: Karel Zak Date: Tue Oct 7 11:57:06 2025 +0200 dmesg: use snprintf() instead of sprintf() Signed-off-by: Karel Zak sys-utils/dmesg.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit c1d4ee34b1f6d5356f1f601231ebaecc5a575202 Author: Karel Zak Date: Tue Oct 7 11:56:44 2025 +0200 lsipc: use snprintf() instead of sprintf() Signed-off-by: Karel Zak sys-utils/lsipc.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) commit 83a9a2226b1d1f59b1555100b6c4f2f8b3e7e4cf Author: Masatake YAMATO Date: Tue Oct 7 02:17:02 2025 +0900 kill.1.adoc: update the description for -l/-L option Signed-off-by: Masatake YAMATO misc-utils/kill.1.adoc | 3 +++ 1 file changed, 3 insertions(+) commit 041380f4ca7244df624bf7efdb5e27fdd3144175 Author: Karel Zak Date: Mon Oct 6 15:04:24 2025 +0200 libblkid: use snprintf() instead of sprintf() Replace sprintf() calls with snprintf() to ensure proper bounds checking when formatting strings. In encode.c, the check now validates snprintf() return value instead of pre-checking buffer size, providing more robust error handling. In probe.c, snprintf() is used with proper size calculation based on remaining buffer space. Signed-off-by: Karel Zak libblkid/src/encode.c | 6 ++++-- libblkid/src/probe.c | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) commit 92ed1e3a6845fbc78f43ad79b0d09096b5c9ce56 Merge: 2168a1a6d 72e91222d Author: Karel Zak Date: Mon Oct 6 14:31:29 2025 +0200 Merge branch 'fix/rename_annotation_opt_to_annotate' of https://github.com/cgoesche/util-linux-fork * 'fix/rename_annotation_opt_to_annotate' of https://github.com/cgoesche/util-linux-fork: man-common: rename annotation.adoc to annotate.adoc swapon: use ANNOTATE_OPTION as enum name for --annotate swapon: rename the new --annotation option to --annotate swapon: (usage) make the help text fit within 80 columns again commit 2168a1a6d0ed4407f59f75eb8e88a9474e0399cb Merge: 32fa5e65b 030303e4b Author: Karel Zak Date: Mon Oct 6 14:31:07 2025 +0200 Merge branch 'master' of https://github.com/stanislav-brabec/util-linux * 'master' of https://github.com/stanislav-brabec/util-linux: netlink process_addr(): Ignore UL_NL_SOFT_ERROR ul_nl_addr_dup(): Fix address comparison commit 32fa5e65b9ba867e2a839ddf51b946cb6190b451 Merge: be9769258 7e49938a7 Author: Karel Zak Date: Mon Oct 6 14:29:50 2025 +0200 Merge branch 'kill--line-oriented-list' of https://github.com/masatake/util-linux * 'kill--line-oriented-list' of https://github.com/masatake/util-linux: kill (-l/-L): print one signal per line when stdout is not a TTY kill: (refactor) rename parameter to better reflect its purpose commit be976925803eea79425691b06d7c4b6e115b5d59 Merge: 4e4d54e98 59f95d6f9 Author: Karel Zak Date: Mon Oct 6 14:27:16 2025 +0200 Merge branch 'PR/tools-checkcompletion-rewrite' of https://github.com/karelzak/util-linux-work * 'PR/tools-checkcompletion-rewrite' of https://github.com/karelzak/util-linux-work: ci: add bash-completion consistency check to CODECHECK bash-completion: add lsfd bash-completion: add blkpr tools: rewrite checkcompletion.sh to be source-based commit 72e91222df67ffbc4b20af4b692222c43f32fcb2 Author: Christian Goeschel Ndjomouo Date: Sun Oct 5 20:35:18 2025 -0400 man-common: rename annotation.adoc to annotate.adoc Signed-off-by: Christian Goeschel Ndjomouo man-common/Makemodule.am | 2 +- man-common/{annotation.adoc => annotate.adoc} | 0 man-common/meson.build | 2 +- po-man/po4a.cfg | 2 +- sys-utils/swapon.8.adoc | 2 +- 5 files changed, 4 insertions(+), 4 deletions(-) commit 395d4f1edb8b9c3f73aea13bdd3baea66c912c8e Author: Christian Goeschel Ndjomouo Date: Sun Oct 5 20:31:23 2025 -0400 swapon: use ANNOTATE_OPTION as enum name for --annotate Signed-off-by: Christian Goeschel Ndjomouo sys-utils/swapon.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) commit 53e247a28d666f12982b31fba0c0101372d0803d Author: Benno Schulenberg Date: Sun Oct 5 20:24:41 2025 -0400 swapon: rename the new --annotation option to --annotate The form --annotation gave the impression that after the subsequent "=" comes the text that each column name should be annotated with. Furthermore, the other two options with optional arguments (--show and --discard) are in the imperative, so follow that style and use --annotate instead. (In the bargain, this allows aligning the descriptions in the help text perfectly again.) Also, improve the description of --annotate in the man page somewhat. Signed-off-by: Benno Schulenberg bash-completion/swapon | 2 +- lib/strutils.c | 2 +- man-common/annotation.adoc | 8 ++++---- sys-utils/swapon.c | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) commit 368c7bda2effe3946f5143a325d150efd8dd04fc Author: Benno Schulenberg Date: Sun Oct 5 20:20:01 2025 -0400 swapon: (usage) make the help text fit within 80 columns again Recent commit 72829b08fe added four extra spaces to each description in the usage text, causing some lines to be wider than 80 characters. Undo that addition, to make the help text fit again in 80 columns. Also, put the equals sign for the new --annotation option inside the square brackets instead of mistakenly before them. Signed-off-by: Benno Schulenberg sys-utils/swapon.c | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) commit 030303e4b93b65a5172a0c80f9f864b06f76cb81 Author: Stanislav Brabec Date: Sun Oct 5 02:53:17 2025 +0200 netlink process_addr(): Ignore UL_NL_SOFT_ERROR UL_NL_SOFT_ERROR can be issued if kernel sends unpaired RTM_DELADDR. It should not happen, but it can happen due to race condition. And it happened in some kernel versions. It is not reason to exit the processing loop. Signed-off-by: Stanislav Brabec lib/netlink.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) commit a5db8d0a9ed63969381feeee1eb0c3b39d32876b Author: Stanislav Brabec Date: Sun Oct 5 02:29:00 2025 +0200 ul_nl_addr_dup(): Fix address comparison When duplicating struct ul_nl_addr, set address to ifa_local, if it is set to ifa_local in the source. This fixes the address for PtP IPv4 network interfaces and avoids UL_NL_SOFT_ERROR during address removal. Signed-off-by: Stanislav Brabec lib/netlink.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 7e49938a7b05e693cd13af4651bb32e6d51f79a6 Author: Masatake YAMATO Date: Sat Oct 4 05:45:41 2025 +0900 kill (-l/-L): print one signal per line when stdout is not a TTY It helps using kill -l/-L in a script. $ ./kill -L 1 HUP 2 INT 3 QUIT 4 ILL 5 TRAP 6 ABRT 6 IOT 7 BUS 8 FPE 9 KILL ... $ ./kill -L | cat 1 HUP 2 INT 3 QUIT ... Signed-off-by: Masatake YAMATO misc-utils/kill.c | 40 +++++++++++++++++++++++++++++++--------- 1 file changed, 31 insertions(+), 9 deletions(-) commit 48f7dccbb095b9892c1807c7f901c77e07417a67 Author: Masatake YAMATO Date: Sat Oct 4 05:21:35 2025 +0900 kill: (refactor) rename parameter to better reflect its purpose Signed-off-by: Masatake YAMATO misc-utils/kill.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 59f95d6f98e07ebcafb0ae55d1eef3c4a733ed7b Author: Karel Zak Date: Thu Oct 2 14:44:10 2025 +0200 ci: add bash-completion consistency check to CODECHECK Add 'make checkcompletion' to the GitHub CI CODECHECK phase to verify bash-completion files consistency for all future pull requests. This ensures that all user-facing programs have proper bash-completion scripts registered in both autotools and meson build systems. Signed-off-by: Karel Zak .github/workflows/cibuild.sh | 1 + 1 file changed, 1 insertion(+) commit 9fd4790e0c8bd6b3600ae3cdb1dd47b5c7796ee8 Author: Karel Zak Date: Thu Oct 2 14:35:43 2025 +0200 bash-completion: add lsfd Signed-off-by: Karel Zak bash-completion/Makemodule.am | 3 ++ bash-completion/lsfd | 67 +++++++++++++++++++++++++++++++++++++++++++ meson.build | 1 + 3 files changed, 71 insertions(+) commit 4e9b71e1c92d69b8225ca69230fe8313dc772c4a Author: Karel Zak Date: Thu Oct 2 14:17:42 2025 +0200 bash-completion: add blkpr Signed-off-by: Karel Zak bash-completion/Makemodule.am | 3 +++ bash-completion/blkpr | 47 +++++++++++++++++++++++++++++++++++++++++++ meson.build | 1 + 3 files changed, 51 insertions(+) commit 31ffdd82b20303c920c1bd32be0ea5e95734d6a8 Author: Karel Zak Date: Thu Oct 2 14:07:53 2025 +0200 tools: rewrite checkcompletion.sh to be source-based The original checkcompletion.sh checked compiled binaries in the build directory, which was unreliable and build-dependent. The new version performs comprehensive source-based verification by: 1. Extracting program names from */Makemodule.am files (bin_PROGRAMS, sbin_PROGRAMS, usrbin_exec_PROGRAMS, usrsbin_exec_PROGRAMS) 2. Verifying three-way consistency: - Programs defined in Makemodule.am files - bash-completion files in bash-completion/ directory - Entries in bash-completion/Makemodule.am - Entries in meson.build 3. Properly handling special cases: - Programs that don't need completion (system tools like login, agetty) - Programs with special install hooks (runuser, lastb symlinks) The script now provides clear categorized output: - Programs missing bash-completion files - bash-completion files not registered in Makemodule.am - Orphaned bash-completion files without programs This makes it easier to maintain bash-completion consistency and catch issues before release. Signed-off-by: Karel Zak tools/checkcompletion.sh | 153 ++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 132 insertions(+), 21 deletions(-) commit 4e4d54e9847035ca82816330d46be9088d727ff4 Author: Masatake YAMATO Date: Fri Oct 3 01:21:21 2025 +0900 lsns: don't abort if /proc/self/ns/user is absent; probe other ns entries In 7d5036fdafe0 ("lsns: show namespaces only kept alive by open file descriptors"), I added code that calls stat(2) on /proc/self/ns/user and made lsns exit after reporting an error if the call failed. I assumed /proc/self/ns/user would be available on all platforms. As Axel Karjalainen reported (link below), that assumption was wrong: on some platforms, the file is absent. Exiting for this reason is undesirable. The stat(2) call is used to obtain the dev_t of the backing device of nsfs. However, /proc/self/ns/user is not the only source; calling stat(2) on other namespace files under /proc/self/ns yields the same dev_t. This change iterates over entries under /proc/self/ns and uses the first one whose stat(2) succeeds. Reported-by: Axel Karjalainen Link: https://github.com/util-linux/util-linux/pull/2902#issuecomment-3348630885 Fixes: 7d5036fdafe0 ("lsns: show namespaces only kept alive by open file descriptors") Signed-off-by: Masatake YAMATO sys-utils/lsns.c | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) commit eb0e08a76e3ebd4571b957e727847060304c32bb Author: Karel Zak Date: Thu Oct 2 13:38:13 2025 +0200 bash-completion: add bits to dist tarball The bits command was added in commit 6e1301d59 (text-utils: add bits command) but the bash-completion file was not added to the autotools Makemodule.am, causing it to be missing from release tarballs. This resulted in meson build failures when using the tarball with bash-completion installed, as meson.build references the file but it doesn't exist in the tarball. Fixes: https://github.com/util-linux/util-linux/issues/3766 Signed-off-by: Karel Zak bash-completion/Makemodule.am | 3 +++ 1 file changed, 3 insertions(+) commit aa9c79e3e838cbb80ab70aa3bc6d8b4902bbf22f Merge: 4633d62e7 28af8ed13 Author: Karel Zak Date: Thu Oct 2 12:13:41 2025 +0200 Merge remote-tracking branch 'github/dependabot/github_actions/actions/checkout-5' commit 4633d62e72c15ee3f3aaee48d250316dd306d937 Merge: ec71160db b8b5030d7 Author: Karel Zak Date: Thu Oct 2 11:57:12 2025 +0200 Merge branch 'master' of https://github.com/stanislav-brabec/util-linux * 'master' of https://github.com/stanislav-brabec/util-linux: agetty: Implement netlink based IP processing New netlink library commit ec71160db85acde32a9eca5fb238c82d6a6e52cb Author: Karel Zak Date: Thu Oct 2 11:55:55 2025 +0200 lib/configs: initialize FD to -1 Signed-off-by: Karel Zak lib/configs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 348f7820ac53ee6c17708b608ac6a91d27fab844 Merge: fa1a84c82 03066584f Author: Karel Zak Date: Thu Oct 2 11:52:52 2025 +0200 Merge branch 'PR/agetty-issue-read' of https://github.com/karelzak/util-linux-work * 'PR/agetty-issue-read' of https://github.com/karelzak/util-linux-work: lib/configs: improve readability agetty: use standard path macros build-sys: make sure _PATH_SYSCONFDIR is defined commit fa1a84c82da083ea0ac36f04235b6c9a06aeff59 Merge: d2872b34f 75c1674ec Author: Karel Zak Date: Thu Oct 2 11:51:43 2025 +0200 Merge branch 'PR/libsmartcols-uri-cleanup' of https://github.com/karelzak/util-linux-work * 'PR/libsmartcols-uri-cleanup' of https://github.com/karelzak/util-linux-work: libsmartcols: small uri and annotation cleanup commit d2872b34fdf605157ff87d47865672c6f25a4813 Merge: 2a3fd0f35 1947a7e4c Author: Karel Zak Date: Thu Oct 2 11:50:46 2025 +0200 Merge remote-tracking branch 'github/dependabot/github_actions/actions/labeler-6' commit 2a3fd0f35b09af864a7a5078e7bf9c94ef2e40ec Merge: 6044c0d7d eeb42cef6 Author: Karel Zak Date: Thu Oct 2 11:46:10 2025 +0200 Merge branch 'lsfd--masked-map-files' of https://github.com/masatake/util-linux * 'lsfd--masked-map-files' of https://github.com/masatake/util-linux: lsfd: refer to /proc/$pid/map_files if a mapped file is masked commit b8b5030d792c0ffe51ee4a5925d43735b5d782d8 Author: Stanislav Brabec Date: Wed Jul 9 14:35:28 2025 +0200 agetty: Implement netlink based IP processing The current \4 and \6 issue file escapes implementation is inferior. It uses get getifaddrs() to get a list of IP addresses. This function does not provide enough information to discriminate between stable IP addresses and ephemeral addresses. As a result, especially \6 often gives unreliable results. The code is actually unable to get list of all interfaces, so a proper out of the box IP address reporting depends on external tools that generate issue file with the interfaces list. The netlink messages are already used, but only as a change notifier. The contents is not used, even if it contains exact information about the change. As a result, change processing is triggered even for unrelated network changes like IPv6 router advertisement. The new implementation uses the new netaddrq library. It reports more reliable results especially for IPv6. Additionally, two new escapes are implemented: \a Report all interfaces and assigned addresses that are considered as reliable. \A Report all interfaces and all assigned addresses. TODO: To prevent overflooding of the console, the list is currently limited to 12 interfaces. It would be nice to make it configurable. Two pass processing of issue files. First pass just collects IP protocols and list of interfaces (in future interface patterns). Now it always processes both IPv4 and IPv6 on all interfaces. Not so bad, as \a is smart enough to display just the useful part. Maybe implement more options and formatting support for \a and \A. Maybe implement interface filter globs or regexps for \a and \A. Still not so bad, as \a automatically skips interfaces without reliable addresses (e. g. lo or TUN). Signed-off-by: Stanislav Brabec term-utils/agetty.8.adoc | 6 + term-utils/agetty.c | 419 +++++++++++++++++++++++++++-------------------- 2 files changed, 247 insertions(+), 178 deletions(-) commit ee8586cbdfb20bea6b1a7e3f10f136b6c8554f02 Author: Stanislav Brabec Date: Wed Jul 9 14:29:10 2025 +0200 New netlink library To support netlink and IP address processing, two new library files were added: netlink: Generic netlink message processing code converting netlink messages to calls of callbacks with a pre-processed data. netaddrq: A code that gets and maintains linked list of the current interfaces and assigned IP addresses. It also provides a rating of IP addresses based on its "quality", i. e. type of address, validity, lifetime etc. Signed-off-by: Stanislav Brabec include/Makemodule.am | 2 + include/netaddrq.h | 124 +++++++++ include/netlink.h | 171 ++++++++++++ lib/Makemodule.am | 11 + lib/meson.build | 2 + lib/netaddrq.c | 723 ++++++++++++++++++++++++++++++++++++++++++++++++++ lib/netlink.c | 466 ++++++++++++++++++++++++++++++++ 7 files changed, 1499 insertions(+) commit 1947a7e4cabdfe8df2255253a45056c3675c3f5f Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed Oct 1 18:08:06 2025 +0000 build(deps): bump actions/labeler from 5 to 6 Bumps [actions/labeler](https://github.com/actions/labeler) from 5 to 6. - [Release notes](https://github.com/actions/labeler/releases) - [Commits](https://github.com/actions/labeler/compare/v5...v6) --- updated-dependencies: - dependency-name: actions/labeler dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] .github/workflows/labeler.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 75c1674eca61c35e758a0bd716f63e2cb58fc206 Author: Karel Zak Date: Wed Oct 1 15:37:31 2025 +0200 libsmartcols: small uri and annotation cleanup - use scols_column_get_uri() and scols_cell_get_uri() - don't read annotation or URI when unnecessary Signed-off-by: Karel Zak libsmartcols/src/print.c | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) commit 6044c0d7df5735a6dcd8a2dd36f06758c452a863 Merge: 305977144 a0b7e3ed1 Author: Karel Zak Date: Wed Oct 1 15:13:02 2025 +0200 Merge branch 'feat/swapon_translate_col_names' of https://github.com/cgoesche/util-linux-fork * 'feat/swapon_translate_col_names' of https://github.com/cgoesche/util-linux-fork: bash-completion: (swapon) add --annotation option swapon: document --annotation option on the man page swapon: control column header tooltips with --annotation swapon: annotate column header names with OSC8 hyperlinks lib/strutils: add helper function for --annotation option libsmartcols: new scols_column_{refer,get}_annotation routines commit 3059771445a81446544bbb08ba2dfeb4506ba598 Author: Lukas Herbolt Date: Wed Oct 1 13:54:50 2025 +0200 fallocate: allow O_CREATE if mode is FALLOC_FL_WRITE_ZEROES With the new flag we can create the ZEROED allcoated files directly and not in the two steps. Removing FALLOC_FL_WRITE_ZEROES from the flags of not using O_CREATE on open(). Signed-off-by: Lukas Herbolt sys-utils/fallocate.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 03066584f148a8429386c4a928d093913b3e85e2 Author: Karel Zak Date: Wed Oct 1 14:53:41 2025 +0200 lib/configs: improve readability Signed-off-by: Karel Zak include/configs.h | 5 +++-- lib/configs.c | 16 ++++++++++------ 2 files changed, 13 insertions(+), 8 deletions(-) commit a7f5e5c9f9c00823e04e89e9030337239a5bd7b8 Author: Karel Zak Date: Wed Oct 1 14:42:39 2025 +0200 agetty: use standard path macros - remove unnecessary issuefile-related stuff from include/pathnames.h - use standard _PATH_* macros Signed-off-by: Karel Zak include/pathnames.h | 4 ---- lib/configs.c | 4 +--- term-utils/agetty.c | 10 ++++++---- 3 files changed, 7 insertions(+), 11 deletions(-) commit dc1e88ff93f40f2f8093fcf35bda615a9384edcd Author: Karel Zak Date: Wed Oct 1 14:39:01 2025 +0200 build-sys: make sure _PATH_SYSCONFDIR is defined The autotools and meson define $sysconfdir, but this variable is not accessible for compiler. Fix it. Signed-off-by: Karel Zak Makefile.am | 1 + meson.build | 1 + 2 files changed, 2 insertions(+) commit 2412842c253c31559e5e6e9b6f3ecba7902aeafa Merge: 57d59a5cd 16826c667 Author: Karel Zak Date: Wed Oct 1 13:54:08 2025 +0200 Merge branch 'configs3' of https://github.com/schubi2/util-linux * 'configs3' of https://github.com/schubi2/util-linux: Using fix issue dir path "/usr/lib" for agetty agetty: using configs lib for parsing issue files libcommon: added lib "configs" for parsing configuration files in the correct order commit 16826c6675df3b6b28851c72f2dd1d194d3c7189 Author: Stefan Schubert Date: Wed Oct 1 12:19:08 2025 +0200 Using fix issue dir path "/usr/lib" for agetty include/pathnames.h | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) commit a0b7e3ed1020ee279c2bd5f1855e5a38876553f4 Author: Christian Goeschel Ndjomouo Date: Fri Sep 26 07:13:38 2025 -0400 bash-completion: (swapon) add --annotation option Signed-off-by: Christian Goeschel Ndjomouo bash-completion/swapon | 1 + 1 file changed, 1 insertion(+) commit eeb42cef6bea9bd5d6f657b8c58e41b4b5371d21 Author: Masatake YAMATO Date: Sun Aug 31 10:03:03 2025 +0900 lsfd: refer to /proc/$pid/map_files if a mapped file is masked To extract file information, lsfd called stat(2) on the the file name found in /proc/$pid/maps. However, lsfd may retrieve information for the wrong file if the file is bind-mount'ed after the process maps the file. To obtain the information about the originally mapped file, this change makes lsfd call fstat(2) on the corresponding entry under /proc/$pid/map_files avoiding the bind-mount ambiguity. Signed-off-by: Masatake YAMATO lsfd-cmd/lsfd.c | 6 ++ tests/expected/lsfd/mkfds-mmap-masked-file | 4 ++ tests/ts/lsfd/mkfds-mmap-masked-file | 88 ++++++++++++++++++++++++++++++ 3 files changed, 98 insertions(+) commit 577c22f372d62c51aefde8661866afb39a6f6df8 Author: Christian Goeschel Ndjomouo Date: Wed Sep 24 12:39:40 2025 -0400 swapon: document --annotation option on the man page Signed-off-by: Christian Goeschel Ndjomouo man-common/Makemodule.am | 1 + man-common/annotation.adoc | 6 ++++++ man-common/meson.build | 1 + po-man/po4a.cfg | 1 + sys-utils/swapon.8.adoc | 2 ++ 5 files changed, 11 insertions(+) commit 72829b08fed24cf37592f3e639faa665531d727c Author: Christian Goeschel Ndjomouo Date: Wed Sep 24 10:48:11 2025 -0400 swapon: control column header tooltips with --annotation Whether column header names should be annotated can be specified with the --annotation option which takes the following three arguments: 'auto', 'never' and 'always', where the former is the default and makes it so that annotations are only added when the output device is a terminal. If the option is omitted the 'auto' behavior should be expected. Signed-off-by: Christian Goeschel Ndjomouo sys-utils/swapon.c | 42 +++++++++++++++++++++++++++--------------- 1 file changed, 27 insertions(+), 15 deletions(-) commit 3497a42cd0e21e5b509179edb996fb97e18d4b79 Author: Christian Goeschel Ndjomouo Date: Sun Sep 21 01:46:41 2025 -0400 swapon: annotate column header names with OSC8 hyperlinks Column header names are annotated with OSC8 hyperlinks to provide tooltips with a description of the column. This is mainly motivated by the fact that column headers are currently not translated, so as an alternative we will provide a column description translated according to the environment locale setting. Addresses: #1291 Signed-off-by: Christian Goeschel Ndjomouo sys-utils/swapon.c | 59 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 31 insertions(+), 28 deletions(-) commit c58f5c34bfeb09af8cfd8f592de7d56a24f0c61f Author: Christian Goeschel Ndjomouo Date: Wed Sep 24 10:44:57 2025 -0400 lib/strutils: add helper function for --annotation option This function helps evaluates the --annotation option argument and determines whether annotations are enabled or not. It is identical to the hyperlinkwanted() routine, and although that forms some form of redundancy, it is intentionally kept seperate for potential future changes. Signed-off-by: Christian Goeschel Ndjomouo include/strutils.h | 1 + lib/strutils.c | 14 ++++++++++++++ 2 files changed, 15 insertions(+) commit 57d59a5cd5ba6c0b32cae27f5ce48241274f6e6e Merge: addc1ee07 04c6b3327 Author: Karel Zak Date: Wed Sep 24 10:06:04 2025 +0200 Merge branch 'PR/Benno-23Sep' of https://github.com/karelzak/util-linux-work * 'PR/Benno-23Sep' of https://github.com/karelzak/util-linux-work: fallocate: (man,usage) correct the alphabetical sorting of the options fallocate: (man) slightly improve the grammar of two sentences fallocate: redo four tweaks that were accidentally undone column: (usage) wrap two descriptions, to make them fit within 80 columns column: (usage) correct the description of --wrap-separator getopt: (usage) make the description of -U fit within 80 columns commit addc1ee072d4ebe66b40021a655201a6765fb464 Merge: 5dc1f2685 11804caef Author: Karel Zak Date: Wed Sep 24 10:05:48 2025 +0200 Merge branch 'PR/liblastlog2-fix-operator-precedence' of https://github.com/karelzak/util-linux-work * 'PR/liblastlog2-fix-operator-precedence' of https://github.com/karelzak/util-linux-work: liblastlog2: refactor conditional assignments for better readability liblastlog2: fix operator precedence in conditional assignments commit 5dc1f2685e5168b67332db8fe29d56343876cd32 Merge: 444e6415d ac42e0a85 Author: Karel Zak Date: Wed Sep 24 10:05:26 2025 +0200 Merge branch 'master' of https://github.com/wuguanghao3/util-linux * 'master' of https://github.com/wuguanghao3/util-linux: losetup: Add the --remove/-R parameter to remove loop devices losetup: rename function *_delete_* to *_detach_* commit 444e6415dfc67ce2107aaa275a7e4b89a151a788 Merge: 53a8e762f b462fdefe Author: Karel Zak Date: Wed Sep 24 10:04:39 2025 +0200 Merge branch 'PR/agetty-escape-tab-erase-fix' of https://github.com/karelzak/util-linux-work * 'PR/agetty-escape-tab-erase-fix' of https://github.com/karelzak/util-linux-work: agetty: fix erasure of escape sequences and tab characters commit ac42e0a8595c34e6da2778d5374f6cd7004f89a3 Author: wguanghao Date: Mon Sep 22 22:58:49 2025 +0800 losetup: Add the --remove/-R parameter to remove loop devices Signed-off-by: Wu Guanghao include/loopdev.h | 1 + lib/loopdev.c | 31 +++++++++++++++++++++++++++++++ sys-utils/losetup.8.adoc | 10 ++++++++++ sys-utils/losetup.c | 31 ++++++++++++++++++++++++++++++- 4 files changed, 72 insertions(+), 1 deletion(-) commit aacb1c114169491b7b4ff3b75d85dd3255e4d0fb Author: wguanghao Date: Mon Sep 22 22:37:57 2025 +0800 losetup: rename function *_delete_* to *_detach_* Signed-off-by: Wu Guanghao include/loopdev.h | 4 ++-- lib/loopdev.c | 8 ++++---- libmount/src/hook_loopdev.c | 2 +- sys-utils/losetup.c | 27 ++++++++++++++------------- 4 files changed, 21 insertions(+), 20 deletions(-) commit 5836f3ee6dd2fd18af0e2fda1698115b4f9619a0 Author: Christian Goeschel Ndjomouo Date: Sun Sep 21 01:07:58 2025 -0400 libsmartcols: new scols_column_{refer,get}_annotation routines The new routines can be used to add an annotation to columns which are intended to serve as descriptions for column headers. These annotations are formatted with OSC8 escape sequences and then sent to the output stream. A supporting terminal can then display the formatted string as a tooltip. This can be fairly useful when an application wants to provide a translated description for a column header name, since the latter is sometimes a mere abbreviation and not necessarily telling enough. Addresses: #1291 Signed-off-by: Christian Goeschel Ndjomouo include/ttyutils.h | 2 +- libsmartcols/docs/libsmartcols-sections.txt | 2 ++ libsmartcols/src/column.c | 41 ++++++++++++++++++++++++++--- libsmartcols/src/libsmartcols.h.in | 3 +++ libsmartcols/src/libsmartcols.sym | 2 ++ libsmartcols/src/print.c | 11 ++++++-- libsmartcols/src/smartcolsP.h | 1 + 7 files changed, 55 insertions(+), 7 deletions(-) commit 04c6b3327741fb5e64ea4125ebdbaaeaa9c53469 Author: Benno Schulenberg Date: Thu Sep 18 10:57:07 2025 +0200 fallocate: (man,usage) correct the alphabetical sorting of the options Signed-off-by: Benno Schulenberg sys-utils/fallocate.1.adoc | 14 +++++++------- sys-utils/fallocate.c | 4 ++-- 2 files changed, 9 insertions(+), 9 deletions(-) commit f1a63d9306dffe75fa9589a11b5777f28eff3122 Author: Benno Schulenberg Date: Thu Sep 18 10:57:06 2025 +0200 fallocate: (man) slightly improve the grammar of two sentences Signed-off-by: Benno Schulenberg sys-utils/fallocate.1.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit f3fa698cfd6d947a1f18d278af1663a7c7ec7053 Author: Benno Schulenberg Date: Thu Sep 18 10:57:05 2025 +0200 fallocate: redo four tweaks that were accidentally undone Recent commit c407a13fc1 undid some changes that were made by commits 762f295a02 and 325a269995. Redo these changes. Signed-off-by: Benno Schulenberg sys-utils/fallocate.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) commit fac2376b9df8bee2d278f519488ac1ab667be33c Author: Benno Schulenberg Date: Thu Sep 18 10:57:04 2025 +0200 column: (usage) wrap two descriptions, to make them fit within 80 columns Signed-off-by: Benno Schulenberg text-utils/column.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) commit 737aa238520fbe525c7b4afb191afd0b060782fd Author: Benno Schulenberg Date: Thu Sep 18 10:57:03 2025 +0200 column: (usage) correct the description of --wrap-separator Option --wrap-separator does not imply --table-wrap, but requires it in order to have any effect. Also, shorten the text a bit to fit within 80 columns. Signed-off-by: Benno Schulenberg text-utils/column.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 6beaa76225b01e481e267563d7a676586d183883 Author: Benno Schulenberg Date: Thu Sep 18 10:57:02 2025 +0200 getopt: (usage) make the description of -U fit within 80 columns (It is good practice to keep --help output from causing ugly wrapped text when printed to a standard 80-column terminal.) Signed-off-by: Benno Schulenberg misc-utils/getopt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 11804caef13430a4b19f065bcfa34e79bfe07eef Author: Karel Zak Date: Tue Sep 23 11:04:15 2025 +0200 liblastlog2: refactor conditional assignments for better readability Split conditional assignments like 'if ((ret = func()) != 0)' into separate assignment and comparison statements for improved code clarity, maintainability, and debugging. Signed-off-by: Karel Zak liblastlog2/src/lastlog2.c | 30 ++++++++++++++++++++---------- 1 file changed, 20 insertions(+), 10 deletions(-) commit 2348237f059ddb8ff4bc255235766771e1af3dd1 Author: Karel Zak Date: Tue Sep 23 10:46:59 2025 +0200 liblastlog2: fix operator precedence in conditional assignments Fix operator precedence in ll2_rename_user() where != comparison was taking precedence over assignment, causing retval to be assigned 0 or 1 instead of the actual function return value. Fixes: https://github.com/util-linux/util-linux/issues/3756 Signed-off-by: Karel Zak liblastlog2/src/lastlog2.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 53a8e762fc58574d453c07edc262e9f613cabf9d Author: Karel Zak Date: Mon Sep 22 15:51:06 2025 +0200 tools: improve git-version-bump with validation and help - Add --help option with usage information - Validate script runs only on stable/vX.Y branches - Validate version format (X.Y, X.Y.Z, X.Y-rcN, X.Y.Z-rcN) Signed-off-by: Karel Zak tools/git-version-bump | 75 ++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 70 insertions(+), 5 deletions(-) commit de0388543f3bfe0317215ff9ddcac11fff7d01d0 Author: Karel Zak Date: Mon Sep 22 15:21:18 2025 +0200 tools: improve git-version-next to always output version variables - Always output UL_NEXT_FINAL_RELEASE (previously only for RC releases) - Add UL_LAST_FINAL_RELEASE for last stable (non-RC) release - Remove _RAW variables from output for cleaner interface The UL_NEXT_FINAL_RELEASE now represents the version that will be released after code stabilization, while UL_LAST_FINAL_RELEASE represents the last stable release without -rc suffix. Signed-off-by: Karel Zak tools/git-version-next | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) commit 7c831bbad288cec55a49c09c3b9bc24370d04828 Author: Karel Zak Date: Mon Sep 22 11:59:49 2025 +0200 tools: add git-version-next script release versioning - Only works on stable/* branches (releases are generated from stable branches) - Supports util-linux versioning: vX.Y (major), vX.Y.Z (maintenance) - Command-line options: --rc, --release-master, --release-update - Safety check prevents --release-master on branches with existing releases - Testing support via --last-release and --last-xy-release overrides Version Schema: Major releases: vX.Y-rc1, vX.Y-rc2, [vX.Y-rc3], vX.Y Maintenance releases: vX.Y.Z-rc1, vX.Y.Z Signed-off-by: Karel Zak tools/git-version-next | 270 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 270 insertions(+) commit 6fbde1c7db838e22b109e2e58eaa51b086758bc6 Author: Sam Fink Date: Wed Sep 17 10:04:51 2025 -0400 libblkid: Fix probe_ioctl_tp assigning BLKGETDISKSEQ as physical sector size Fix issue introduced by PR#2908 in probe_ioctl_tp where the BLKGETDISKSEQ ioctl result is incorrectly assigned to the topology with blkid_topology_set_physical_sector_size instead of blkid_topology_set_diskseq. This issue was observed while using a Debian 13 container on a RHEL 9.4 host attempting to format a volume. The physical sector size was incorrectly reported as 3. This issue also presents with the fdisk command, which also uses this library to resolve physical sector size of devices. Example fdisk output: root@r94p121-PA:~ # fdisk --list /dev/sdb Disk /dev/sdb: 90 GiB, 96636764160 bytes, 188743680 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 3 bytes I/O size (minimum/optimal): 512 bytes / 3 bytes Strace of relevant ioctls: ioctl(3, BLKALIGNOFF, [0]) = 0 ioctl(3, BLKIOMIN, [512]) = 0 ioctl(3, BLKIOOPT, [0]) = 0 ioctl(3, BLKPBSZGET, [512]) = 0 ioctl(3, BLKGETDISKSEQ, [3]) = 0 ioctl(3, BLKSSZGET, [512]) = 0 libblkid/src/topology/ioctl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit d1cf7efb17869d0fdf132bb3581d9b74a459bb87 Author: Stefan Schubert Date: Wed Sep 17 13:43:55 2025 +0200 agetty: using configs lib for parsing issue files term-utils/agetty.c | 39 +++++++++++++++++++++++---------------- 1 file changed, 23 insertions(+), 16 deletions(-) commit 4109f4bfefff9e6cd65815399af3eab2b0a59104 Author: Stefan Schubert Date: Wed Sep 17 13:40:29 2025 +0200 libcommon: added lib "configs" for parsing configuration files in the correct order include/Makemodule.am | 3 +- include/configs.h | 92 ++++++++++++++ include/pathnames.h | 10 +- lib/Makemodule.am | 3 +- lib/configs.c | 330 ++++++++++++++++++++++++++++++++++++++++++++++++++ lib/meson.build | 1 + 6 files changed, 433 insertions(+), 6 deletions(-) commit b462fdefe74836c22cb02039dca419a512dc6c88 Author: Karel Zak Date: Wed Sep 17 12:58:59 2025 +0200 agetty: fix erasure of escape sequences and tab characters When escape sequences (like arrow keys) or tab characters are entered at the login prompt, they are properly visualized but only partially erasable with backspace. This is because the erase logic assumes each stored character corresponds to one visual character, but escape sequences display as "^[" (2 chars) and tabs expand to multiple spaces. Track visual character width for each stored byte in a parallel array. When erasing, use the stored visual width to properly erase all displayed characters for that input byte. Fixes: https://github.com/util-linux/util-linux/issues/3624 Signed-off-by: Karel Zak term-utils/agetty.c | 53 ++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 42 insertions(+), 11 deletions(-) commit 6bbf884525cad2702b1e69a0ac022db3ef92154d Author: Benno Schulenberg Date: Tue Sep 16 15:44:41 2025 +0200 blkid: correct an erroneous error message Running `blkid -p -n no /dev/sda2` would report: blkid: error: -u argument is empty (Mentioning -u instead of -n, and falsely claiming emptiness.) Now the above command will report: blkid: invalid argument: no (I don't think option -n needs to be mentioned, as it will be obvious when inspecting the command line. Not mentioning the option allows reusing an existing error message, avoiding needless ballooning and allowing the patch to be applied to the stable branch.) Signed-off-by: Benno Schulenberg misc-utils/blkid.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 64855a8ad6601da8852c92d591f5bb5a4e10e2a7 Merge: a1ba7b9d8 5fd9b8c95 Author: Karel Zak Date: Wed Sep 17 10:14:15 2025 +0200 Merge branch 'PR/column-wrap-separator' of https://github.com/karelzak/util-linux-work * 'PR/column-wrap-separator' of https://github.com/karelzak/util-linux-work: column: add --wrap-separator option for custom text wrapping commit a1ba7b9d8deb9ce5ba400f6ff9e6cd83917ea0df Merge: e8d5e8a30 839b4f729 Author: Karel Zak Date: Tue Sep 16 13:11:05 2025 +0200 Merge branch 'namespace-man-pages' of https://github.com/masatake/util-linux * 'namespace-man-pages' of https://github.com/masatake/util-linux: nsenter,unshare: (man) add the NS-related commands to SEE ALSO commit e8d5e8a30ec8072296d6d42ad9d187146b4fee07 Merge: 41c1dc609 b855ee731 Author: Karel Zak Date: Tue Sep 16 13:09:55 2025 +0200 Merge branch 'lsfd--test-use-stat-Ld' of https://github.com/masatake/util-linux * 'lsfd--test-use-stat-Ld' of https://github.com/masatake/util-linux: tests: (lsfd/column-source-btrfs) extract a minor number in a more reliable way commit 5fd9b8c95ca67e1c14002c6c2b04315049ef14ba Author: Karel Zak Date: Mon Sep 15 16:14:08 2025 +0200 column: add --wrap-separator option for custom text wrapping Add a new --wrap-separator option that allows users to specify custom separator characters for text wrapping within table columns. When used with --table-wrap, the separator is replaced with newlines to enable wrapping at specific points rather than just by column width. The implementation: - Processes wrap separator replacement in modify_table() after column wrap flags are set - Uses scols_cell_refer_memory() for data containing embedded nulls - Enables scols_wrapzero_nextchunk for columns with wrapping enabled - Only applies to columns that have the wrap flag set via --table-wrap Example usage: $ echo -e 'Name:Desc\nJohn:A|software|dev' | \ column --table --separator ':' \ --table-wrap 2 --wrap-separator '|' Name Desc John A software dev Fixes: https://github.com/util-linux/util-linux/issues/3739 Signed-off-by: Karel Zak .../column/table-wrap-separator-all-columns | 4 ++ tests/expected/column/table-wrap-separator-basic | 4 ++ .../expected/column/table-wrap-separator-multichar | 7 +++ .../table-wrap-separator-multiple-separators | 6 ++ .../column/table-wrap-separator-without-wrap | 3 + tests/ts/column/table | 20 ++++++ text-utils/column.1.adoc | 18 +++++- text-utils/column.c | 73 ++++++++++++++++++++++ 8 files changed, 134 insertions(+), 1 deletion(-) commit 41c1dc60903803c2a4d7f286012f8e96ff06990f Author: Benno Schulenberg Date: Thu Sep 11 15:48:07 2025 +0200 findmnt: (usage) add a needed equals sign before an optional argument The argument of --kernel is optional, so an '=' is required when an argument is specified. Also tweak the wording, and add a semicolon between two phrases. Signed-off-by: Benno Schulenberg misc-utils/findmnt.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 839b4f729afa263ef6c94178dce52d02b48d843e Author: Masatake YAMATO Date: Sat Sep 13 21:33:12 2025 +0900 nsenter,unshare: (man) add the NS-related commands to SEE ALSO The NS-related commands in util-linux complement each other. Users should know them. Signed-off-by: Masatake YAMATO sys-utils/nsenter.1.adoc | 4 ++++ sys-utils/unshare.1.adoc | 2 ++ 2 files changed, 6 insertions(+) commit b855ee731107dc46fc8c0656bbbde6203beba0d9 Author: Masatake YAMATO Date: Sat Sep 13 09:09:09 2025 +0900 tests: (lsfd/column-source-btrfs) extract a minor number in a more reliable way This change fixes a potential bug in the test case. The original code used the %d of stat command to extract the device minor number for a file based on a wrong assumption. Use %Ld instead. Signed-off-by: Masatake YAMATO tests/ts/lsfd/column-source-btrfs | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) commit b1f8b5740d81d813a2ea9ae1db8f059e5bee3b60 Merge: 242736808 8a7bc1ab0 Author: Karel Zak Date: Thu Sep 11 10:47:27 2025 +0200 Merge branch 'PR/libmount-fsconfig-nofail' of https://github.com/karelzak/util-linux-work * 'PR/libmount-fsconfig-nofail' of https://github.com/karelzak/util-linux-work: libmount: don't report fsconfig errors with "nofail" commit 242736808ad5c9e1e3992f0a1076df2846773dd5 Merge: 00a9d7e9d e873aa032 Author: Karel Zak Date: Thu Sep 11 09:45:49 2025 +0200 Merge branch 'PR/libfdisk-collision-report' of https://github.com/karelzak/util-linux-work * 'PR/libfdisk-collision-report' of https://github.com/karelzak/util-linux-work: libfdisk: improve collision reporting commit 00a9d7e9d614a3373789bffb44996defdac98c21 Merge: 50caf83d4 f9cdc91be Author: Karel Zak Date: Thu Sep 11 09:45:22 2025 +0200 Merge branch 'PR/logger-stdin-overflow' of https://github.com/karelzak/util-linux-work * 'PR/logger-stdin-overflow' of https://github.com/karelzak/util-linux-work: logger: fix buffer overflow when read stdin commit 8a7bc1ab00d91e8a17ca8cb2907ca3c2a73381dd Author: Karel Zak Date: Thu Sep 11 09:35:58 2025 +0200 libmount: don't report fsconfig errors with "nofail" The new kernel API returns EINVAL on FSCONFIG_CMD_CREATE if the mount source is inaccessible. We do not want to report this as an error when the "nofail" mount option is specified. Note that EINVAL may also be returned by other fsconfig() settings, so we need to check whether a source is specified and whether it is really inaccessible. This is just a heuristic (as with the old mount(2)). Fixes: https://github.com/util-linux/util-linux/issues/3741 Signed-off-by: Karel Zak libmount/src/context_mount.c | 6 ++++++ 1 file changed, 6 insertions(+) commit 50caf83d43fbee58ecb5a11e57857a027dea5148 Author: Jeremy Linton Date: Wed Sep 10 09:51:21 2025 -0500 lscpu: New Arm C1 parts Arm has announced the C1-Nano with a TRM here: https://developer.arm.com/documentation/107753/latest The C1-Pro with a TRM here: https://developer.arm.com/documentation/107771/latest The C1-Ultra with a TRM here: https://developer.arm.com/documentation/108014/latest The C1-Premium with a TRM here: https://developer.arm.com/documentation/109416/latest Signed-off-by: Jeremy Linton sys-utils/lscpu-arm.c | 4 ++++ 1 file changed, 4 insertions(+) commit 6134498c46cdcf4954331d36ba4da87af2e35e8e Author: Benno Schulenberg Date: Tue Sep 9 17:12:08 2025 +0200 sfdisk: (man) do not use the common 'include' for --help and --version Anomalously, `sfdisk` uses -v for --version instead of the standard uppercase -V. In `sfdisk` -V means --verify. This effectively reverts commit 82d0bfe59a from last week, and adds a comment to try and prevent the mistake in the future. CC: Mario Blättermann Signed-off-by: Benno Schulenberg disk-utils/sfdisk.8.adoc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) commit f9cdc91be0442b887e4a636fbb75f027f0267a84 Author: Karel Zak Date: Wed Sep 10 10:31:23 2025 +0200 logger: fix buffer overflow when read stdin $ perl -e 'print "<" . "0"x10240' | logger --prio-prefix Segmentation fault (core dumped) Signed-off-by: Karel Zak misc-utils/logger.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit 96ced06c80963176e305ad71c878015fc429d882 Merge: d77118f46 c5e6712f2 Author: Karel Zak Date: Tue Sep 9 11:12:04 2025 +0200 Merge branch 'PR/libfdisk-script-format' of https://github.com/karelzak/util-linux-work * 'PR/libfdisk-script-format' of https://github.com/karelzak/util-linux-work: libfdisk: (script) improve separator usage in named-fields dump libfdisk: (script) fix device name separator parsing commit d77118f46070f71eaafa3be1c7d24226ddcc2846 Author: Christian Goeschel Ndjomouo Date: Mon Sep 8 15:48:01 2025 -0400 rev: add --zero option to --help output Signed-off-by: Christian Goeschel Ndjomouo text-utils/rev.c | 1 + 1 file changed, 1 insertion(+) commit 86ae6e88a58d77ca9a6afde573563c3bd6f5b5a8 Merge: a6e3299ed f5de212c5 Author: Karel Zak Date: Mon Sep 8 12:04:43 2025 +0200 Merge branch 'fix/doc_list_columns_lscpu_man' of https://github.com/cgoesche/util-linux-fork * 'fix/doc_list_columns_lscpu_man' of https://github.com/cgoesche/util-linux-fork: lscpu: (man) add description of the --list-columns option commit a6e3299edd75595e16548a1e385548606fdebec1 Merge: 908777470 0f56028af Author: Karel Zak Date: Mon Sep 8 12:03:32 2025 +0200 Merge branch 'master' of https://github.com/mariobl/util-linux * 'master' of https://github.com/mariobl/util-linux: Fix another issue in login.1.adoc sfdisk.8.adoc: Replace --help and --version with external entity Fix markup in pam_lastlog2.8.adoc Fix markup in column.1.adoc Fix markup in mount.8.adoc Fix typo and markup in getopt.1.adoc Fix markup in lsfd.1.adoc Fix markup, grammar and spelling in scols-filter.5.adoc Fix login.1.adoc commit 908777470d403ec30c525472ba0d3701c9c5a223 Author: Matthew R. Ochs Date: Tue Sep 2 13:28:36 2025 -0700 lscpu: Add NVIDIA Olympus arm64 core Add an entry for NVIDIA Olympus arm64 core. Signed-off-by: Matthew R. Ochs sys-utils/lscpu-arm.c | 1 + 1 file changed, 1 insertion(+) commit e873aa0322f42167a402e95dd398fcc4eb256119 Author: Karel Zak Date: Mon Sep 8 11:44:16 2025 +0200 libfdisk: improve collision reporting In some cases, a collision occurs in the first sector. Creating a new partition table overwrites this sector, but updating an existing table does not. In the latter case, promising to wipe the collision is a bug. Because we cannot know whether the collision is expected (e.g., hybrid or boot disks) or unintended, we inform the user and let them decide. libfdisk can wipe the unwanted signature only when creating a new partition table; otherwise, the user can use wipefs. This commit introduces fdisk_is_collision_area(), an API to detect where the collision occurs. The function is generic and not limited to the first sector. Fixes: https://github.com/util-linux/util-linux/issues/3659 Signed-off-by: Karel Zak disk-utils/fdisk.c | 21 +++++++++++++++------ disk-utils/sfdisk.c | 28 +++++++++++++++++++--------- libfdisk/docs/libfdisk-sections.txt | 1 + libfdisk/src/context.c | 21 +++++++++++++++++++++ libfdisk/src/fdiskP.h | 1 + libfdisk/src/libfdisk.h.in | 1 + libfdisk/src/libfdisk.sym | 4 ++++ libfdisk/src/wipe.c | 23 ++++++++++++++++------- 8 files changed, 78 insertions(+), 22 deletions(-) commit f5de212c5f71857b4278c453a099f0d73b152dca Author: Christian Goeschel Ndjomouo Date: Thu Sep 4 16:46:25 2025 -0400 lscpu: (man) add description of the --list-columns option Signed-off-by: Christian Goeschel Ndjomouo sys-utils/lscpu.1.adoc | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) commit 0f56028afbb9f627161861d05200045a8eeb597d Author: Mario Blättermann Date: Thu Sep 4 14:02:13 2025 +0200 Fix another issue in login.1.adoc login-utils/login.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 82d0bfe59a450760f4a5591c120f56d9f48ee511 Author: Mario Blättermann Date: Wed Sep 3 20:23:49 2025 +0200 sfdisk.8.adoc: Replace --help and --version with external entity sfdisk.8.adoc still had the literal --help and --version options, in contrary to all other .adoc files, which have the man-common/help-version.adoc entity. disk-utils/sfdisk.8.adoc | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) commit 1d74f39365739ae9509f97392b9460a6014860c7 Author: Mario Blättermann Date: Wed Sep 3 19:53:04 2025 +0200 Fix markup in pam_lastlog2.8.adoc pam_lastlog2/man/pam_lastlog2.8.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 06e2aabbf6435326cd03449344877484bc5bb109 Author: Mario Blättermann Date: Wed Sep 3 19:51:07 2025 +0200 Fix markup in column.1.adoc text-utils/column.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 289b46feb23bd0b89990e8939ed32c36fee8e811 Author: Mario Blättermann Date: Wed Sep 3 19:49:24 2025 +0200 Fix markup in mount.8.adoc sys-utils/mount.8.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit a089764de26d895cdaceaed49ed7717b31ae9325 Author: Mario Blättermann Date: Wed Sep 3 19:47:39 2025 +0200 Fix typo and markup in getopt.1.adoc misc-utils/getopt.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit d2183dd0a8b1165483de6847d28225f45911e92a Author: Mario Blättermann Date: Wed Sep 3 19:46:06 2025 +0200 Fix markup in lsfd.1.adoc lsfd-cmd/lsfd.1.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit b7679c552c6c1636f9a2505061c72b43d92cbbf0 Author: Mario Blättermann Date: Wed Sep 3 19:44:04 2025 +0200 Fix markup, grammar and spelling in scols-filter.5.adoc libsmartcols/scols-filter.5.adoc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 4bd6531c94b52935e2a99ad1b48ceeaf0bad2417 Author: Mario Blättermann Date: Wed Sep 3 19:39:37 2025 +0200 Fix login.1.adoc Something went wrong in the last commit... Instead fixing markup issues, *login* went to an empty **. login-utils/login.1.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit d073aab9d34eea205545c77222947691f4abf5aa Author: Karel Zak Date: Wed Sep 3 11:57:06 2025 +0200 hardlink: (man) add note note about ULFILEEQ_DEBUG= Addresses: https://github.com/util-linux/util-linux/discussions/3323 Signed-off-by: Karel Zak misc-utils/hardlink.1.adoc | 5 +++++ 1 file changed, 5 insertions(+) commit 90c0b7658c08ba01abfd12a189b17535ceb067bd Merge: 0c57a76da 523faa741 Author: Karel Zak Date: Wed Sep 3 11:46:35 2025 +0200 Merge branch 'feat/lscpu_add_microcode_column' of https://github.com/cgoesche/util-linux-fork * 'feat/lscpu_add_microcode_column' of https://github.com/cgoesche/util-linux-fork: bash-completion: add MICROCODE to $OPTS_ALL lscpu: add MICROCODE output column commit c5e6712f29c18659f8bd9a567dc7f849a2a3cf3b Author: Karel Zak Date: Wed Sep 3 11:30:57 2025 +0200 libfdisk: (script) improve separator usage in named-fields dump Ensure that name=value pairs are separated by commas. Signed-off-by: Karel Zak libfdisk/src/script.c | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) commit 4eab9175dfd62c1d1a0bbc43a49ca8a85e9adac7 Author: Karel Zak Date: Wed Sep 3 10:54:06 2025 +0200 libfdisk: (script) fix device name separator parsing In the named-fields script format, the colon is used as the separator between the device name and other values. The device name may also contain colons. This commit ensures it is treated as a separator only when there is a space before or after the colon. Note that the device name is optional and may be omitted. There is no escaping for problematic characters in the name. Use " : " as the separator. Fixes: https://github.com/util-linux/util-linux/issues/3723 Signed-off-by: Karel Zak libfdisk/src/script.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) commit 0c57a76da61e5ab1f15eada0553b2ef85026269c Merge: 129c99c0e fd6d6676c Author: Karel Zak Date: Wed Sep 3 10:12:31 2025 +0200 Merge branch 'fix/fix_lsns_list_columns_opt' of https://github.com/cgoesche/util-linux-fork * 'fix/fix_lsns_list_columns_opt' of https://github.com/cgoesche/util-linux-fork: bash-completion: (lsns) add -H/--list-columns options lsns: fix --list-columns option Signed-off-by: Karel Zak commit 129c99c0e1cce307e64a1ee6685d59b1f3e016de Merge: fc535b1e3 e3641db7f Author: Karel Zak Date: Wed Sep 3 10:06:39 2025 +0200 Merge branch 'feat/allow_killing_with_pidfd' of https://github.com/cgoesche/util-linux-fork * 'feat/allow_killing_with_pidfd' of https://github.com/cgoesche/util-linux-fork: textual: rename list_colunms() to list_columns() and remove trailing whitespaces include/strutils: add missing header guard comment lib: fix bad indentation in meson.build kill: add support for race-free process kills using pidfd inodes commit fc535b1e3be1cfed696d4b2614e69b33cfa67154 Merge: 7eb91dc08 f5c2a2864 Author: Karel Zak Date: Wed Sep 3 09:56:26 2025 +0200 Merge branch 'feat/add_columns_env_ls_cmds' of https://github.com/cgoesche/util-linux-fork * 'feat/add_columns_env_ls_cmds' of https://github.com/cgoesche/util-linux-fork: lscpu: (man) document the LSCPU_{CACHES_}COLUMNS environment variables bash-completion: (lscpu) add -H/--list-columns options lscpu: add --list-columns option and declutter --help output lscpu: add support for LSCPU_{CACHES_}COLUMNS environment variables lsclocks: add support for LSCLOCKS_COLUMNS environmental variable tests: (lsmem) update expected/lscpu/* with 'ZONES' column lsmem: add support for LSMEM_COLUMNS environmental variable commit 7eb91dc080c980c94f15c9a5f9e3452b6a1f1fc1 Merge: 1c28f8f5f def89ba6d Author: Karel Zak Date: Wed Sep 3 09:52:07 2025 +0200 Merge branch 'feat/lslocks_output_env' of https://github.com/cgoesche/util-linux-fork * 'feat/lslocks_output_env' of https://github.com/cgoesche/util-linux-fork: lslocks: (man) add LSLOCKS_COLUMNS description in new ENVIRONMENT section lslocks: add support for LSLOCKS_COLUMNS environmental variable commit 1c28f8f5f391c00a3eb5c78f6a50bc520121e53b Merge: c407a13fc 658584158 Author: Karel Zak Date: Wed Sep 3 09:47:04 2025 +0200 Merge branch 'PR/libmount-canonicalize-cleanup' of https://github.com/karelzak/util-linux-work * 'PR/libmount-canonicalize-cleanup' of https://github.com/karelzak/util-linux-work: lib/canonicalize: use ul_ prefix lib/canonicalize: introduce generic drop-permission caller meson: cleanup tests to use libcommon.la autotools: cleanup tests to use libcommon.la tests: add canonicalize test lib/canonicalize: refactor canonicalize_path() lib/canonicalize: rename to ul_absolute_path() commit e3641db7f92733a46a8a1979f70cefef797bdf41 Author: Christian Goeschel Ndjomouo Date: Mon Sep 1 17:27:55 2025 -0400 textual: rename list_colunms() to list_columns() and remove trailing whitespaces Signed-off-by: Christian Goeschel Ndjomouo lib/pidutils.c | 6 +++--- lsfd-cmd/lsfd.c | 4 ++-- misc-utils/findmnt.c | 4 ++-- misc-utils/lslocks.c | 4 ++-- sys-utils/lsns.c | 4 ++-- 5 files changed, 11 insertions(+), 11 deletions(-) commit a58f682652d61ed6f0a0acfe123f0a4554fbfde1 Author: Christian Goeschel Ndjomouo Date: Mon Sep 1 16:57:39 2025 -0400 include/strutils: add missing header guard comment Signed-off-by: Christian Goeschel Ndjomouo include/strutils.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit c54a0678b3ed80833f969fba1eb5834ba0fc795f Author: Christian Goeschel Ndjomouo Date: Mon Sep 1 16:54:52 2025 -0400 lib: fix bad indentation in meson.build Signed-off-by: Christian Goeschel Ndjomouo lib/meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 39a42a53625c6cf2b6d8cb64394db97267962b44 Author: Christian Goeschel Ndjomouo Date: Mon Aug 25 14:04:19 2025 -0400 kill: add support for race-free process kills using pidfd inodes The 6.9 Linux kernel added support for pidfds which introduces inodes that stay unique for the system lifetime and can be used to reference a process with both its traditional pid and pid fd inode number. This enables race-free killing of processes and protects from false referencing due to pid rollovers. This patch adds a new way of addressing processes with the format 'pid:pidfd_inode'. When the new format is used, 'kill' assumes the user wishes to use a pidfd to signal a process, and will therefore use pidfd_* routines to complete the task if the provided inode matches the one from a previously acquired pidfd. Addresses: #3252 Signed-off-by: Christian Goeschel Ndjomouo include/Makemodule.am | 1 + include/pidutils.h | 14 ++++++ lib/Makemodule.am | 1 + lib/meson.build | 1 + lib/pidutils.c | 49 +++++++++++++++++++ meson.build | 10 ++++ misc-utils/kill.1.adoc | 7 ++- misc-utils/kill.c | 54 ++++++++++++++++++--- tests/commands.sh | 1 + tests/expected/build-sys/config-all-devel | 5 +- tests/expected/kill/pidfdino | 1 + tests/helpers/Makemodule.am | 4 ++ tests/helpers/test_kill_pidfdino.c | 38 +++++++++++++++ tests/ts/kill/pidfdino | 81 +++++++++++++++++++++++++++++++ 14 files changed, 257 insertions(+), 10 deletions(-) commit 523faa741835e86aadc5183a61598937ac5290d9 Author: Christian Goeschel Ndjomouo Date: Tue Sep 2 18:01:55 2025 -0400 bash-completion: add MICROCODE to $OPTS_ALL Signed-off-by: Christian Goeschel Ndjomouo bash-completion/lscpu | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 02860cd6a9b9559de3adce7b3d1ea7ca0af0d66c Author: Christian Goeschel Ndjomouo Date: Tue Sep 2 17:59:53 2025 -0400 lscpu: add MICROCODE output column Signed-off-by: Christian Goeschel Ndjomouo sys-utils/lscpu.c | 6 ++++++ 1 file changed, 6 insertions(+) commit fd6d6676c018ff7076fbb0193c87dd445a92c3d2 Author: Christian Goeschel Ndjomouo Date: Tue Sep 2 17:21:35 2025 -0400 bash-completion: (lsns) add -H/--list-columns options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/lsns | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 6246de3e535f4d22f606f2b1b68fc991d2181ac2 Author: Christian Goeschel Ndjomouo Date: Tue Sep 2 17:13:44 2025 -0400 lsns: fix --list-columns option This patch makes it so that we continue parsing all CLI options even when we find -H/--list-columns. Therefore we don't miss any format specifying options, namely --json and --raw, and print the columns in the desired form. Closes: #3725 Signed-off-by: Christian Goeschel Ndjomouo sys-utils/lsns.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) commit f5c2a28647291891f38a5991c6393f63f91f4db7 Author: Christian Goeschel Ndjomouo Date: Tue Sep 2 14:56:32 2025 -0400 lscpu: (man) document the LSCPU_{CACHES_}COLUMNS environment variables Signed-off-by: Christian Goeschel Ndjomouo sys-utils/lscpu.1.adoc | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) commit c88e22425515bdbaa07c8a963789fc052dbb531f Author: Christian Goeschel Ndjomouo Date: Tue Sep 2 14:56:01 2025 -0400 bash-completion: (lscpu) add -H/--list-columns options Signed-off-by: Christian Goeschel Ndjomouo bash-completion/lscpu | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 621b6983e1c782cbef8e239ebcf4b486ae8e4fd1 Author: Christian Goeschel Ndjomouo Date: Tue Sep 2 14:49:34 2025 -0400 lscpu: add --list-columns option and declutter --help output This moves the list of available columns from the --help output to the '--list-columns' option and makes the usage information more readable. Signed-off-by: Christian Goeschel Ndjomouo sys-utils/lscpu.c | 46 +++++++++++++++++++++++++++++++++++----------- 1 file changed, 35 insertions(+), 11 deletions(-) commit 8e4d8ff938089b8369c6fe071fed901d143b9181 Author: Christian Goeschel Ndjomouo Date: Tue Sep 2 14:30:01 2025 -0400 lscpu: add support for LSCPU_{CACHES_}COLUMNS environment variables This provides alternate ways of specifying output columns similar to the '--parse', '--extended' and '--caches' options. Addresses: #2816 Signed-off-by: Christian Goeschel Ndjomouo sys-utils/lscpu.c | 5 +++++ 1 file changed, 5 insertions(+) commit 06489c803c0c0c4c03689d91135fc1a6d89b1417 Author: Christian Goeschel Ndjomouo Date: Sat Aug 30 20:04:49 2025 -0400 lsclocks: add support for LSCLOCKS_COLUMNS environmental variable This provides an alternate way to specify output columns similar to the --output option. Addresses: #2816 Signed-off-by: Christian Goeschel Ndjomouo misc-utils/lsclocks.1.adoc | 5 +++++ misc-utils/lsclocks.c | 2 ++ 2 files changed, 7 insertions(+) commit 5919463684b4e78244be7dbff50d1bbb4b994e73 Author: Christian Goeschel Ndjomouo Date: Sat Aug 30 22:14:28 2025 -0400 tests: (lsmem) update expected/lscpu/* with 'ZONES' column Signed-off-by: Christian Goeschel Ndjomouo tests/expected/lsmem/lsmem-s390-zvm-6g | 138 ++++++----- tests/expected/lsmem/lsmem-x86_64-16g | 416 ++++++++++++++++++--------------- 2 files changed, 306 insertions(+), 248 deletions(-) commit 560151d31dfc4d5e7a48624fa9e4696c196cc4a7 Author: Christian Goeschel Ndjomouo Date: Sat Aug 30 13:09:40 2025 -0400 lsmem: add support for LSMEM_COLUMNS environmental variable This provides an alternate way to specify output columns similar to the --output option. Addresses: #2816 Signed-off-by: Christian Goeschel Ndjomouo sys-utils/lsmem.1.adoc | 5 +++++ sys-utils/lsmem.c | 2 ++ tests/ts/lsmem/lsmem | 2 +- 3 files changed, 8 insertions(+), 1 deletion(-) commit def89ba6d0daf48b18e88a3d81f75489b1bb8110 Author: Christian Goeschel Ndjomouo Date: Tue Sep 2 12:58:06 2025 -0400 lslocks: (man) add LSLOCKS_COLUMNS description in new ENVIRONMENT section Signed-off-by: Christian Goeschel Ndjomouo misc-utils/lslocks.8.adoc | 8 ++++++++ 1 file changed, 8 insertions(+) commit b05f661edbf00ab81ef8d387f801f2c80c93b21f Author: Christian Goeschel Ndjomouo Date: Sat Aug 30 02:07:48 2025 -0400 lslocks: add support for LSLOCKS_COLUMNS environmental variable This provides an alternate way to specify output columns similar to the --output option. Addresses: #2816 Signed-off-by: Christian Goeschel Ndjomouo misc-utils/lslocks.c | 2 ++ 1 file changed, 2 insertions(+) commit 28af8ed133ff15d50b5e2d644c6617d0a3e17033 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Sep 2 13:33:37 2025 +0000 build(deps): bump actions/checkout from 1 to 5 Bumps [actions/checkout](https://github.com/actions/checkout) from 1 to 5. - [Release notes](https://github.com/actions/checkout/releases) - [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/checkout/compare/v1...v5) --- updated-dependencies: - dependency-name: actions/checkout dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] .github/workflows/cibuild.yml | 14 +++++++------- .github/workflows/codeql.yml | 2 +- .github/workflows/coverity.yml | 2 +- .github/workflows/differential-shellcheck.yml | 2 +- 4 files changed, 10 insertions(+), 10 deletions(-) commit c407a13fc1f5842881c967d0132035c7db442d4a Author: Karel Zak Date: Mon Sep 1 14:10:17 2025 +0200 fallocate: update FALLOC_FL_WRITE_ZEROES Update to Zhang Yi's latest version of the patch. Unfortunately, I missed that he was still working on it (it was sent to the kernel mailing lists rather than the util-linux mailing list). Signed-off-by: Karel Zak sys-utils/fallocate.1.adoc | 6 +++--- sys-utils/fallocate.c | 13 +++++++------ 2 files changed, 10 insertions(+), 9 deletions(-) commit 6585841587c4664ee0941611b682c28d3f36c7a2 Author: Karel Zak Date: Wed Aug 27 12:39:03 2025 +0200 lib/canonicalize: use ul_ prefix Signed-off-by: Karel Zak disk-utils/fdisk-list.c | 2 +- include/canonicalize.h | 10 +++++----- lib/canonicalize.c | 21 ++++++++++++--------- lib/loopdev.c | 4 ++-- libblkid/src/devname.c | 4 ++-- libblkid/src/evaluate.c | 4 ++-- libfdisk/src/utils.c | 2 +- libmount/src/cache.c | 2 +- libmount/src/tab.c | 2 +- libmount/src/utils.c | 4 ++-- login-utils/sulogin-consoles.c | 2 +- misc-utils/lsblk.c | 2 +- misc-utils/whereis.c | 2 +- sys-utils/losetup.c | 4 ++-- sys-utils/mount.c | 4 ++-- sys-utils/umount.c | 2 +- 16 files changed, 37 insertions(+), 34 deletions(-) commit 63d14a2e38dbd5c27d3badae5fd418f201a0c802 Author: Karel Zak Date: Tue Jul 1 12:26:41 2025 +0200 lib/canonicalize: introduce generic drop-permission caller * add ul_restricted_path_oper() to fileutils.c * use it as backed for canonicalize_path_restricted() Signed-off-by: Karel Zak include/fileutils.h | 5 ++- lib/Makemodule.am | 2 +- lib/canonicalize.c | 93 +++++------------------------------------------------ lib/fileutils.c | 89 ++++++++++++++++++++++++++++++++++++++++++++++++++ meson.build | 1 + 5 files changed, 103 insertions(+), 87 deletions(-) commit 1198663313c046d4a1f7e6dfc18a59da7e3e8feb Author: Karel Zak Date: Tue Jul 1 17:52:40 2025 +0200 meson: cleanup tests to use libcommon.la This change simplifies future test work. Signed-off-by: Karel Zak meson.build | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) commit 1aff73db242377b58e8021a9e37c9c6501e1a83f Author: Karel Zak Date: Tue Jul 1 17:40:51 2025 +0200 autotools: cleanup tests to use libcommon.la This change simplifies future test work. Signed-off-by: Karel Zak lib/Makemodule.am | 45 ++++++++++++++++++++------------------------- lib/env.c | 2 +- 2 files changed, 21 insertions(+), 26 deletions(-) commit d44a1ee0049ceea7f3b98ee2293db8562cd81f23 Author: Karel Zak Date: Tue Jul 1 12:00:40 2025 +0200 tests: add canonicalize test * add canonicalize_path_restricted() to test_canonicalize program * add test for root and non-root (but suid) user Signed-off-by: Karel Zak lib/canonicalize.c | 14 ++++- tests/commands.sh | 1 + tests/expected/misc/canonicalize-non-root-user | 3 + tests/expected/misc/canonicalize-root-user | 3 + tests/ts/misc/canonicalize | 80 ++++++++++++++++++++++++++ 5 files changed, 99 insertions(+), 2 deletions(-) commit d74fe43f9b8669147c91be401fd35d4c49ea0fa4 Merge: 331a637fa d3b51b545 Author: Karel Zak Date: Mon Sep 1 12:31:47 2025 +0200 Merge branch 'master' of https://github.com/mariobl/util-linux * 'master' of https://github.com/mariobl/util-linux: Fix markup in pam_lastlog2.8.adoc Fix markup in ll2_import_lastlog.3.adoc Fix markup in more.1.adoc Fix markup in column.1.adoc Fix markup in mesg.1.adoc Fix markup in unshare.1.adoc Fix markup in swapon.8.adoc Fix typos and markup in setpriv.1.adoc Fix markup in lsirq.1.adoc Fix markup in flock.1.adoc Fix markup in chmem.8.adoc Fix markup in lastlog2.8.adoc Fix markup in findmnt.8.adoc Fix markup in su.1.adoc Fix markup in login.1.adoc Fix markup in scols-filter.5.adoc commit 331a637fa3a9ceedeff94fdc23b22bc182db4dde Merge: 6e3ae1f0d f7fb89d95 Author: Karel Zak Date: Mon Sep 1 12:27:35 2025 +0200 Merge branch 'lsfd--no-hypertext' of https://github.com/masatake/util-linux * 'lsfd--no-hypertext' of https://github.com/masatake/util-linux: lsfd: revise the code disabling hyperlinks commit 6e3ae1f0dec08f409279d186349ed87ac42e129f Merge: 967d196ec e4514111e Author: Karel Zak Date: Mon Sep 1 12:17:15 2025 +0200 Merge branch 'zramctl-max_comp_streams_fix' of https://github.com/mentha/util-linux * 'zramctl-max_comp_streams_fix' of https://github.com/mentha/util-linux: zramctl: ignore ENOENT when setting max_comp_streams commit 967d196ecdc4aa70738b264bf315b4fe05249936 Merge: 86f3056f2 5dfb06873 Author: Karel Zak Date: Mon Sep 1 11:00:19 2025 +0200 Merge branch 'fix/findmnt_output_regression' of https://github.com/cgoesche/util-linux-fork * 'fix/findmnt_output_regression' of https://github.com/cgoesche/util-linux-fork: findmnt: add missing newline in --raw, --pair and --list output formats commit 86f3056f275c12e88f0f2fb2bf5cda5ba7138bb4 Merge: ce81b71a5 40d088c63 Author: Karel Zak Date: Mon Sep 1 10:13:48 2025 +0200 Merge branch 'man-ipcrm' of https://github.com/PrasannaPaithankar/util-linux * 'man-ipcrm' of https://github.com/PrasannaPaithankar/util-linux: man: Fixed incorrect ipcrm options commit ce81b71a5378acfe21626ec91de0e387fde2f039 Merge: 82ab7a2b1 1a76e3e69 Author: Karel Zak Date: Mon Sep 1 10:12:04 2025 +0200 Merge branch 'feat/improve_umount_bash_comp' of https://github.com/cgoesche/util-linux-fork * 'feat/improve_umount_bash_comp' of https://github.com/cgoesche/util-linux-fork: bash-completion: add fallback to filename expansion for umount commit f7fb89d957e5a022f27b7dff573e3256dba2c0f2 Author: Masatake YAMATO Date: Sun Aug 31 03:18:32 2025 +0900 lsfd: revise the code disabling hyperlinks In the original code, the code was at file.c. This change lifts up the code to upper layer. As a result the fill_column method of struct file becomes simple. As a side effect. this change disables hyperlinks for the entries of UNKN type (e.g. eventpool, or pidfd). This is a bug fix. Signed-off-by: Masatake YAMATO lsfd-cmd/bdev.c | 3 +- lsfd-cmd/cdev.c | 3 +- lsfd-cmd/fifo.c | 3 +- lsfd-cmd/file.c | 35 ++++------------ lsfd-cmd/lsfd.c | 46 ++++++++++++++++------ lsfd-cmd/lsfd.h | 3 +- lsfd-cmd/sock.c | 3 +- lsfd-cmd/unkn.c | 3 +- .../expected/lsfd/option-hyperlink-UNKN-type-file | 7 ++++ tests/ts/lsfd/option-hyperlink | 18 +++++++++ 10 files changed, 73 insertions(+), 51 deletions(-) commit d3b51b5458bd28e00577803a852b1b8478ee4c6a Author: Mario Blättermann Date: Sun Aug 31 17:43:41 2025 +0200 Fix markup in pam_lastlog2.8.adoc pam_lastlog2/man/pam_lastlog2.8.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 76b8e7189cedd9d4fb4bb65365215f550db3071f Author: Mario Blättermann Date: Sun Aug 31 17:41:38 2025 +0200 Fix markup in ll2_import_lastlog.3.adoc liblastlog2/man/ll2_import_lastlog.3.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 6848f614703545cf3f672cdfdcc1dee8cb030443 Author: Mario Blättermann Date: Sun Aug 31 17:39:17 2025 +0200 Fix markup in more.1.adoc text-utils/more.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit b106f2ef89fb769b7edc6fadd2845870393e3455 Author: Mario Blättermann Date: Sun Aug 31 17:38:04 2025 +0200 Fix markup in column.1.adoc text-utils/column.1.adoc | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) commit 615bcbd2176912ccfce7c4d6623b9980952b24ef Author: Mario Blättermann Date: Sun Aug 31 17:35:15 2025 +0200 Fix markup in mesg.1.adoc term-utils/mesg.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 3aa3d4842600d3254d822b9b4da8262316de2bfe Author: Mario Blättermann Date: Sun Aug 31 17:34:12 2025 +0200 Fix markup in unshare.1.adoc sys-utils/unshare.1.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 3ba1d81c0618a14f9cd006d98b73f0d86b811f89 Author: Mario Blättermann Date: Sun Aug 31 17:32:27 2025 +0200 Fix markup in swapon.8.adoc sys-utils/swapon.8.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit cea42c4b8cccd164ffab3cf43906b2dd479af394 Author: Mario Blättermann Date: Sun Aug 31 17:30:44 2025 +0200 Fix typos and markup in setpriv.1.adoc sys-utils/setpriv.1.adoc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 09429247d1998d75b48bfb35bcd731e2dcf85d24 Author: Mario Blättermann Date: Sun Aug 31 17:28:36 2025 +0200 Fix markup in lsirq.1.adoc sys-utils/lsirq.1.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit fdd929b3aec143e81111a175d885b516844dbfd1 Author: Mario Blättermann Date: Sun Aug 31 17:26:46 2025 +0200 Fix markup in flock.1.adoc sys-utils/flock.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 1727f5e41de98964eea3d63e453c5dcbd06ca336 Author: Mario Blättermann Date: Sun Aug 31 17:24:29 2025 +0200 Fix markup in chmem.8.adoc sys-utils/chmem.8.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 7e4ddcdcd3fa32903d6477a7d05aa615f0cb2ffd Author: Mario Blättermann Date: Sun Aug 31 17:22:41 2025 +0200 Fix markup in lastlog2.8.adoc misc-utils/lastlog2.8.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit cd496671380a5042d7420b5c07fdc3adedf12bdf Author: Mario Blättermann Date: Sun Aug 31 17:21:42 2025 +0200 Fix markup in findmnt.8.adoc misc-utils/findmnt.8.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 3145b49988e597ddfcffd08468dad1ca1c3caa9c Author: Mario Blättermann Date: Sun Aug 31 17:20:01 2025 +0200 Fix markup in su.1.adoc login-utils/su.1.adoc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 473fa9bd104dee8866a673ef7753a9c191755406 Author: Mario Blättermann Date: Sun Aug 31 17:18:22 2025 +0200 Fix markup in login.1.adoc login-utils/login.1.adoc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 0f35efde0dfa3b6a8c75e6ef4a85a3892f0eccdb Author: Mario Blättermann Date: Sun Aug 31 17:15:48 2025 +0200 Fix markup in scols-filter.5.adoc libsmartcols/scols-filter.5.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit e4514111ebb6df5f22a0769a9dfb2338b9c6c81a Author: Jiang XueQian Date: Sat Aug 30 17:02:59 2025 +0800 zramctl: ignore ENOENT when setting max_comp_streams The `max_comp_streams` attribute of zram devices has been deprecated and all writes were silently ignored by the kernel since 2016. It was finally removed in 6.15, causing zramctl to fail on ENOENT, when it should just ignore the error. Signed-off-by: Jiang XueQian sys-utils/zramctl.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 5dfb06873eb07389cc2aa9276adb7791bb5f40ab Author: Christian Goeschel Ndjomouo Date: Fri Aug 29 22:41:04 2025 -0400 findmnt: add missing newline in --raw, --pair and --list output formats Addresses: #3711 Signed-off-by: Christian Goeschel Ndjomouo misc-utils/findmnt.c | 2 ++ 1 file changed, 2 insertions(+) commit 40d088c63ce7742180e7d7e813dcababd4c478f5 Author: Prasanna Paithankar Date: Fri Aug 29 18:13:17 2025 +0530 man: Fixed incorrect ipcrm options Signed-off-by: Prasanna Paithankar sys-utils/ipcrm.1.adoc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 82ab7a2b175874c8af845fcbd376ac33b78e30be Merge: 4f853fa26 58cf2752f Author: Karel Zak Date: Thu Aug 28 14:21:54 2025 +0200 Merge branch 'zfs-reflinks' of https://github.com/lordcheeto/util-linux * 'zfs-reflinks' of https://github.com/lordcheeto/util-linux: Add reflink support for ZFS. commit ccae72b465824e9f76ff8b05cc1c692c995a7d01 Author: Karel Zak Date: Tue Jul 1 11:19:29 2025 +0200 lib/canonicalize: refactor canonicalize_path() * introduce do_canonicalize() with proper return values * use do_canonicalize() everywhere Signed-off-by: Karel Zak lib/canonicalize.c | 59 ++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 39 insertions(+), 20 deletions(-) commit 1a76e3e69c43ae60126d4ebdbde3ca5c555c25b9 Author: Christian Goeschel Ndjomouo Date: Wed Aug 27 23:26:42 2025 -0400 bash-completion: add fallback to filename expansion for umount If the user defined path can not be found in the mount table fallback to simple filename expansion. Addresses: #1333 Signed-off-by: Christian Goeschel Ndjomouo bash-completion/umount | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) commit 58cf2752fb74751828f56f4d3f289e02f052aaf0 Author: Chester Gregg Date: Thu Aug 28 02:22:30 2025 +0000 Add reflink support for ZFS. OpenZFS has added the block cloning feature, which implements reflinks for its copy-on-write filesystem. It is now stable and enabled by default on OpenZFS 2.3.0. include/statfs_magic.h | 1 + misc-utils/hardlink.1.adoc | 2 +- misc-utils/hardlink.c | 1 + 3 files changed, 3 insertions(+), 1 deletion(-) commit 4f853fa26cceae3e6ae2a38f3b3328f91340a6a4 Author: Christian Goeschel Ndjomouo Date: Wed Aug 27 04:53:11 2025 -0400 getopt: add member posixly_correct to struct getopt_control Signed-off-by: Christian Goeschel Ndjomouo misc-utils/getopt.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) commit 1c6e01da7950494d265a05c705685e7c7f7cbdb5 Author: Christian Goeschel Ndjomouo Date: Wed Aug 27 04:30:49 2025 -0400 getopt: add feature to ignore unknown options This feature addition will add the '-U' and '--unknown' options It'll allow getopt to ignore unknown options and leave them untouched. Additionally, it will surpress any error messages generated by getopt(3). Addresses: #701 Signed-off-by: Christian Goeschel Ndjomouo Documentation/TODO | 9 --------- misc-utils/getopt.1.adoc | 3 +++ misc-utils/getopt.c | 22 ++++++++++++++++++---- 3 files changed, 21 insertions(+), 13 deletions(-) commit b9f21dbd37cf149bff7ded948c69eca86ce5aa88 Author: Karel Zak Date: Tue Jul 1 11:01:40 2025 +0200 lib/canonicalize: rename to ul_absolute_path() Signed-off-by: Karel Zak include/canonicalize.h | 2 +- lib/canonicalize.c | 2 +- libmount/src/tab.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) commit c42f264120d9c12bdf4df0b31481b49b33540f68 Merge: c83b94a20 36a3c19e9 Author: Karel Zak Date: Tue Aug 26 11:26:48 2025 +0200 Merge branch 'PR/color-names-fixes' of https://github.com/karelzak/util-linux-work * 'PR/color-names-fixes' of https://github.com/karelzak/util-linux-work: tests: add color names test lib/color-names: fix stupid bugs commit c83b94a200ba4af35b1757fee227b40a991197af Merge: c827d66a0 3c98bdcc1 Author: Karel Zak Date: Tue Aug 26 11:26:21 2025 +0200 Merge branch 'sfdisk/args' of https://github.com/t-8ch/util-linux * 'sfdisk/args' of https://github.com/t-8ch/util-linux: sfdisk: reject spurious arguments for --reorder/--backup-pt-sectors commit c827d66a02256893c89e03b4c4ca83841ea7b69e Merge: 9961aefce d88b35164 Author: Karel Zak Date: Tue Aug 26 11:25:48 2025 +0200 Merge branch 'feat/add_microcode_to_lscpu_summary' of https://github.com/cgoesche/util-linux-fork * 'feat/add_microcode_to_lscpu_summary' of https://github.com/cgoesche/util-linux-fork: lscpu: add 'microcode' information to the CPU summary commit 9961aefcefa818bfae439240ee28159a6b19c668 Merge: 94eecc5f1 5d0e9b54c Author: Karel Zak Date: Tue Aug 26 11:25:18 2025 +0200 Merge branch 'fix/clarify_long_flag_in_getopt_script_examples' of https://github.com/cgoesche/util-linux-fork * 'fix/clarify_long_flag_in_getopt_script_examples' of https://github.com/cgoesche/util-linux-fork: getopt: clarify the use of '--long' instead of '--longoptions' in shell examples commit 94eecc5f17e0aa8de7445e409f7cf06337bb205a Merge: a1ec03a18 3f33a29bf Author: Karel Zak Date: Tue Aug 26 11:24:34 2025 +0200 Merge branch 'fix/fstrim_use_f_type_equal_macro' of https://github.com/cgoesche/util-linux-fork * 'fix/fstrim_use_f_type_equal_macro' of https://github.com/cgoesche/util-linux-fork: fstrim: use F_TYPE_EQUAL() macro for statfs.f_type comparison commit a1ec03a18b0e3202e82422b313850caf00793f17 Merge: 2bba05ce3 d62174b9b Author: Karel Zak Date: Tue Aug 26 11:24:16 2025 +0200 Merge branch 'fix/procfs_use_f_type_equal_macro' of https://github.com/cgoesche/util-linux-fork * 'fix/procfs_use_f_type_equal_macro' of https://github.com/cgoesche/util-linux-fork: procfs: use F_TYPE_EQUAL() macro for statfs.f_type comparison commit 2bba05ce3d0b645a45e977b7c1b1479cc6b8cb70 Merge: fe8374c42 80fcb7a5f Author: Karel Zak Date: Tue Aug 26 11:22:41 2025 +0200 Merge branch 'feat/support_lsblk_columns_env' of https://github.com/cgoesche/util-linux-fork * 'feat/support_lsblk_columns_env' of https://github.com/cgoesche/util-linux-fork: lsblk: add support for LSBLK_COLUMNS environmental variable as an alternative to --output commit fe8374c423011a8229281b9e5d3cc2311919f14b Merge: 2651367fc 6aa012215 Author: Karel Zak Date: Tue Aug 26 11:20:44 2025 +0200 Merge branch 'fix/typo_in_lsblk_routine' of https://github.com/cgoesche/util-linux-fork * 'fix/typo_in_lsblk_routine' of https://github.com/cgoesche/util-linux-fork: lsblk: (typo) rename list_colunms() to list_columns() commit 2651367fc387bcbd5fc645e3d9bbeb936110b42f Merge: ddb52125b 9b4f1ca33 Author: Karel Zak Date: Tue Aug 26 11:20:16 2025 +0200 Merge branch 'fix/document_special_chars_in_getopt' of https://github.com/cgoesche/util-linux-fork * 'fix/document_special_chars_in_getopt' of https://github.com/cgoesche/util-linux-fork: getopt: document special symbols that should not be used as option characters commit ddb52125badf174fc572adf6c5ca7301bd0646f2 Merge: 777c3ef53 616c88fb9 Author: Karel Zak Date: Tue Aug 26 11:19:23 2025 +0200 Merge branch 'master' of https://github.com/ticpu/util-linux * 'master' of https://github.com/ticpu/util-linux: zramctl: fix MEM-USED column description commit 777c3ef53bdfb48097852f41fc761c8201c9c1af Merge: 23860b50d c332544d2 Author: Karel Zak Date: Tue Aug 26 11:18:00 2025 +0200 Merge branch 'PR/lscpu-extend-dmi' of https://github.com/karelzak/util-linux-work * 'PR/lscpu-extend-dmi' of https://github.com/karelzak/util-linux-work: lscpu: use maximum CPU speed from DMI, avoid duplicate version string commit 23860b50d49beff3ebcc5049abee3ef744423d9f Merge: 88752378b 2e45f542d Author: Karel Zak Date: Tue Aug 26 11:17:15 2025 +0200 Merge branch 'lsfd--raw-decode-protocol' of https://github.com/masatake/util-linux * 'lsfd--raw-decode-protocol' of https://github.com/masatake/util-linux: lsfd: decode protocol numbers of RAW and RAW6 sockets commit 88752378b15c7593eefb1684e248d09abb759770 Merge: b6f49ddf4 56b0d544c Author: Karel Zak Date: Tue Aug 26 11:16:41 2025 +0200 Merge branch 'PR/mount-api-includes' of https://github.com/karelzak/util-linux-work * 'PR/mount-api-includes' of https://github.com/karelzak/util-linux-work: include/mount-api-utils: update to recent kernel include/mount-api-utils: avoid using sys/mount.h commit b6f49ddf44b4a3acfe9082968dd3f0b131c92ddb Author: Sumanth Korikkar Date: Fri Aug 22 17:13:53 2025 +0200 chmem: Remove commit - chmem print warnings about failures always Users do not care which blocks are set offline, when using size option Consistently printing warnings/errors in this case may confuse them and create the false impression that the enable/disable operation itself has failed. If size option succeeds, chmem should not print errors/warnings. Hence, revert commit 48675a744 ("chmem: print warnings about failures always (not only with --verbose)") Signed-off-by: Sumanth Korikkar sys-utils/chmem.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit d88b3516468de87f5b6a9ded28c0f7efc4f78196 Author: cgoesche Date: Sat Aug 23 20:25:36 2025 -0400 lscpu: add 'microcode' information to the CPU summary The procfs provides microcode revision information on supported platforms (probably only x86 for now). It can be useful to show this in the output of lscpu for various use cases, e.g. applications that wish to make sure that a specific microcode version has been loaded. Addresses: #3050 Signed-off-by: Christian Goeschel Ndjomouo sys-utils/lscpu-cputype.c | 5 +++++ sys-utils/lscpu.1.adoc | 6 +++++- sys-utils/lscpu.c | 6 ++++-- sys-utils/lscpu.h | 1 + tests/expected/lscpu/lscpu-vbox-win | 1 + tests/expected/lscpu/lscpu-vmware_fpe | 1 + tests/expected/lscpu/lscpu-x86_64-64cpu-linux6.2 | 1 + tests/expected/lscpu/lscpu-x86_64-epyc_7451 | 1 + 8 files changed, 19 insertions(+), 3 deletions(-) commit 36a3c19e9a10afe83c9f3e6570521ad4ad252ef2 Author: Karel Zak Date: Mon Aug 25 13:07:21 2025 +0200 tests: add color names test Signed-off-by: Karel Zak tests/commands.sh | 1 + tests/expected/misc/colors | 22 ++++++++++++++++++++++ tests/ts/misc/colors | 42 ++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 65 insertions(+) commit 1b9e3ffd2e4e1e18c6056c572547e1803923487e Author: Karel Zak Date: Mon Aug 25 12:05:01 2025 +0200 lib/color-names: fix stupid bugs - sort "white" -> "yellow" - fix typo "lightgray," Fixes: https://github.com/util-linux/util-linux/issues/2863 Signed-off-by: Karel Zak lib/color-names.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 3c98bdcc1f9b13de8a9d54d034efea789978c1f9 Author: Thomas Weißschuh Date: Sun Aug 24 11:45:45 2025 +0200 sfdisk: reject spurious arguments for --reorder/--backup-pt-sectors These commands only accept a single device argument. Reject any additional unexpected arguments. Signed-off-by: Thomas Weißschuh disk-utils/sfdisk.c | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) commit 5d0e9b54c53190f7b1229c59d4a862075a4f69eb Author: cgoesche Date: Fri Aug 22 21:52:29 2025 -0400 getopt: clarify the use of '--long' instead of '--longoptions' in shell examples Addresses: #2593 Signed-off-by: Christian Goeschel Ndjomouo misc-utils/getopt-example.bash | 3 +++ misc-utils/getopt-example.tcsh | 3 +++ 2 files changed, 6 insertions(+) commit 3f33a29bfb900426b9c6261b460f008f3dc87f58 Author: cgoesche Date: Fri Aug 22 21:01:16 2025 -0400 fstrim: use F_TYPE_EQUAL() macro for statfs.f_type comparison Addresses: #2332 Signed-off-by: Christian Goeschel Ndjomouo sys-utils/fstrim.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit d62174b9bd27f64bddcc2219416de27819d23246 Author: cgoesche Date: Fri Aug 22 20:56:48 2025 -0400 procfs: use F_TYPE_EQUAL() macro for statfs.f_type comparison Addresses: #2332 Signed-off-by: Christian Goeschel Ndjomouo lib/procfs.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit 80fcb7a5f65b68919cb4390a606ef4a3dbbca5b4 Author: cgoesche Date: Fri Aug 22 20:26:07 2025 -0400 lsblk: add support for LSBLK_COLUMNS environmental variable as an alternative to --output Addresses: #2816 Signed-off-by: Christian Goeschel Ndjomouo misc-utils/lsblk.8.adoc | 3 +++ misc-utils/lsblk.c | 1 + 2 files changed, 4 insertions(+) commit 6aa012215abbc9cac7154cd501151bc160709815 Author: cgoesche Date: Fri Aug 22 19:35:36 2025 -0400 lsblk: (typo) rename list_colunms() to list_columns() Signed-off-by: Christian Goeschel Ndjomouo misc-utils/lsblk.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 9b4f1ca3342bdff7e1c3d8eaf3735cf821f407bc Author: cgoesche Date: Fri Aug 22 17:31:24 2025 -0400 getopt: document special symbols that should not be used as option characters getopt(3) routines return `?` or `:` when an unknown option character is encountered or an option is missing its required argument, respectively. It also disallows `;` as an option character. Documenting this makes users aware that they may not use these reserved symbols as option characters, e.g. `-?` which is used in some older programs. Addresses: #2995 Signed-off-by: Christian Goeschel Ndjomouo misc-utils/getopt.1.adoc | 2 +- misc-utils/getopt.c | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) commit 616c88fb9565017c1a08c8869d2559b8d218c443 Author: Jérôme Poulin Date: Thu Aug 21 23:54:17 2025 -0400 zramctl: fix MEM-USED column description The MEM-USED column was incorrectly documented as showing current memory consumption. This is due to confusing naming in the kernel's zram implementation: - Kernel field "mem_used_total" (3rd in mm_stat) = current memory usage - Kernel field "mem_used_max" (5th in mm_stat) = peak memory usage zramctl maps these as: - TOTAL column <= mem_used_total (current usage) - MEM-USED column <= mem_used_max (peak usage) The misleading "MEM-USED" name suggests current usage, but it actually shows the peak memory usage (high water mark) since device creation or last reset. This is tracked by the kernel's max_used_pages which only increases when current usage exceeds the stored maximum. Fixed description from: "memory zram have been consumed to store compressed data" to "peak memory usage to store compressed data". Mise à jour de la traduction française. po/fr.po | 4 ++-- po/util-linux.pot | 2 +- sys-utils/zramctl.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) commit c332544d215ccb466a64a441eb5a421b9fe8cdfd Author: Karel Zak Date: Thu Aug 21 11:35:17 2025 +0200 lscpu: use maximum CPU speed from DMI, avoid duplicate version string * Read maximum CPU speed from DMI * Don't use max speed if nonsensical * Avoid appending "CPU @ speed" to the version string if it's already included. (This is a code robustness improvement as DMI is currently read for ARMs only, and the issue was detected on Intel.) Fixes: https://github.com/util-linux/util-linux/commit/a772d7c493afcec32f0123fc947013f74db6e45d Signed-off-by: Karel Zak sys-utils/lscpu-dmi.c | 21 +++++++++++++++++---- sys-utils/lscpu.h | 1 + 2 files changed, 18 insertions(+), 4 deletions(-) commit c5d76cba5832ddb865819fb5aa6b1280e64133ee Merge: d6c72456d 6289701fb Author: Karel Zak Date: Thu Aug 21 10:59:25 2025 +0200 Merge branch 'kill/usage-indent-comment-grammar' of https://github.com/WakeNaoki/util-linux * 'kill/usage-indent-comment-grammar' of https://github.com/WakeNaoki/util-linux: kill: comments: fix grammar in parse_arguments() kill: usage: fix wrapped indent in -l/--list description commit 56b0d544cfd0751a8338c302a287f21786d4721e Author: Karel Zak Date: Thu Aug 21 10:16:14 2025 +0200 include/mount-api-utils: update to recent kernel Signed-off-by: Karel Zak include/mount-api-utils.h | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) commit 2a9b48d20d74f65ac708b3bcee6a7e2a61aadf88 Author: Karel Zak Date: Thu Aug 21 09:59:10 2025 +0200 include/mount-api-utils: avoid using sys/mount.h The file is unnecessary and introduces duplicate #define of MS_* macros. Fixes: https://github.com/util-linux/util-linux/issues/3674 Signed-off-by: Karel Zak include/mount-api-utils.h | 1 - 1 file changed, 1 deletion(-) commit d6c72456dc5e88fe124e0299840352d12ee8aa05 Author: Mario Blättermann Date: Thu Aug 21 09:35:47 2025 +0200 liblastlog2: markup fixes for man pages Signed-off-by: Karel Zak liblastlog2/man/lastlog2.3.adoc | 8 ++++---- liblastlog2/man/ll2_import_lastlog.3.adoc | 6 +++--- liblastlog2/man/ll2_new_context.3.adoc | 4 ++-- liblastlog2/man/ll2_read_all.3.adoc | 6 +++--- liblastlog2/man/ll2_read_entry.3.adoc | 6 +++--- liblastlog2/man/ll2_remove_entry.3.adoc | 6 +++--- liblastlog2/man/ll2_rename_user.3.adoc | 6 +++--- liblastlog2/man/ll2_unref_context.3.adoc | 4 ++-- liblastlog2/man/ll2_update_login_time.3.adoc | 6 +++--- liblastlog2/man/ll2_write_entry.3.adoc | 6 +++--- 10 files changed, 29 insertions(+), 29 deletions(-) commit 6289701fb4f0cf0a7a1065ea65f9feb69a4f5d82 Author: Naoki Wake Date: Mon Aug 18 18:49:35 2025 -0700 kill: comments: fix grammar in parse_arguments() Insert 'that' so the sentence reads '... only option that can be used with other options.' Comment-only change; no functional impact. Signed-off-by: Naoki Wake misc-utils/kill.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit e08ca363b85f66b0a6e4a45aaebcc0eb57ec966c Author: Naoki Wake Date: Mon Aug 18 18:46:08 2025 -0700 kill: usage: fix wrapped indent in -l/--list description Increase the indentation of the continuation line from one to two spaces to match the common util-linux help style (see Documentation/howto-usage-function.txt). This touches a translatable string. Whitespace-only change; no functional impact. Signed-off-by: Naoki Wake misc-utils/kill.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 2e45f542dbf9a4bb19b804ae98e3ba7742595012 Author: Masatake YAMATO Date: Sat Jan 4 03:50:01 2025 +0900 lsfd: decode protocol numbers of RAW and RAW6 sockets NOTE: this chage breaks compatibility of existing -Q expression used in a shell script; the data type of RAW.PROTOCOL has changed from to . With this change, lsfd decodes RAW.PROTOCOL with a built-in table based on linux/in.h and getprotobynumber(3) that may refer to /etc/protocols internally. In addition, this change adds RAW.PROTOCOL.RAW column that holds the original protocol numbers. Signed-off-by: Masatake YAMATO lsfd-cmd/lsfd.1.adoc | 9 +- lsfd-cmd/lsfd.c | 5 +- lsfd-cmd/lsfd.h | 1 + lsfd-cmd/sock-xinfo.c | 185 ++++++++++++++++++++++++++++++++++------- tests/expected/lsfd/mkfds-raw | 8 +- tests/expected/lsfd/mkfds-raw6 | 8 +- tests/ts/lsfd/mkfds-raw | 19 ++++- tests/ts/lsfd/mkfds-raw6 | 19 ++++- 8 files changed, 209 insertions(+), 45 deletions(-) commit 643bdae8e38055e36acf2963c3416de206081507 Merge: 6ab940b1b f27b33b45 Author: Karel Zak Date: Wed Aug 20 09:14:02 2025 +0200 Merge branch 'PR/fallocate-write-zeroes' of https://github.com/karelzak/util-linux-work * 'PR/fallocate-write-zeroes' of https://github.com/karelzak/util-linux-work: fallocate: add FALLOC_FL_WRITE_ZEROES support commit 6ab940b1b7743ae6bf032f37389f8c3390f048eb Author: Thomas Weißschuh Date: Tue Aug 19 18:13:02 2025 +0200 lsclocks: stop using MAX_CLOCKS MAX_CLOCKS is only available in the kernel UAPI headers and not libc headers. Switch back to a hardcoded value. This value is a stable ABI anyways and matches the other fallback definitions. Fixes: d3c49ee062f7 ("lsclocks: use MAX_CLOCKS, improve indention") Signed-off-by: Thomas Weißschuh misc-utils/lsclocks.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit d3c49ee062f761cb4ad272c1300ebb5dfd932c9a Author: Karel Zak Date: Thu Aug 14 12:38:29 2025 +0200 lsclocks: use MAX_CLOCKS, improve indention Let's follow the kernel and use MAX_CLOCKS to define CLOCK_AUX. Signed-off-by: Karel Zak misc-utils/lsclocks.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) commit 31a8d6b7dfcf7c27143385cb2706cb1ac048e934 Merge: c88a7529f ff89d9c4a Author: Karel Zak Date: Thu Aug 14 12:18:50 2025 +0200 Merge branch 'lsclocks/auxclocks' of https://github.com/t-8ch/util-linux * 'lsclocks/auxclocks' of https://github.com/t-8ch/util-linux: lsclocks: add auxiliary clocks commit c88a7529fb666963552481bf01175064a64a7cb6 Merge: 0ff6fd371 2a31355b1 Author: Karel Zak Date: Thu Aug 14 12:06:40 2025 +0200 Merge branch 'fix-logger-issue' of https://github.com/akappner/util-linux * 'fix-logger-issue' of https://github.com/akappner/util-linux: logger: fix incorrect warning message when both --file and a message are specified commit 0ff6fd37159fdbbbc86c0019b3034cccb31f4ac7 Merge: c3882c00c 5180f6590 Author: Karel Zak Date: Thu Aug 14 12:05:22 2025 +0200 Merge branch 'PR/swapon-fstab' of https://github.com/karelzak/util-linux-work * 'PR/swapon-fstab' of https://github.com/karelzak/util-linux-work: swapon: (man page) add details about fstab configuration commit 2a31355b11c3714cac2b6b60565b639aa32388f1 Author: Alexander Kappner Date: Wed Aug 13 04:10:28 2025 -0700 logger: fix incorrect warning message when both --file and a message are specified Logger warns that when both --file and a message are given, the message is ignored. It does the opposite. Fix the warning message to conform to the observed behavior. Example: echo "You will not see this file in the log" > file.txt logger -f file.txt "You will see this message in the log" Signed-off-by: Alexander Kappner misc-utils/logger.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit f27b33b45f9d7daf745dba8b71996efd1120407a Author: Zhang Yi Date: Wed Aug 13 10:40:15 2025 +0800 fallocate: add FALLOC_FL_WRITE_ZEROES support The Linux kernel (since version 6.17) supports FALLOC_FL_WRITE_ZEROES in fallocate(2). Add support for FALLOC_FL_WRITE_ZEROES to the fallocate utility by introducing a new option -w|--write-zeroes. Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=278c7d9b5e0c Signed-off-by: Zhang Yi sys-utils/fallocate.1.adoc | 11 +++++++++-- sys-utils/fallocate.c | 20 ++++++++++++++++---- 2 files changed, 25 insertions(+), 6 deletions(-) commit 5180f6590c7405f4c87f1529b160fef8ad64e88a Author: Karel Zak Date: Tue Aug 12 14:47:49 2025 +0200 swapon: (man page) add details about fstab configuration The fstab(5) man page already describes some basic aspects of "swap," but it makes sense to be more specific in the swapon man page and describe everything in one place, serving as a normative reference for what is expected on Linux in fstab for swap. Fixes: https://github.com/util-linux/util-linux/issues/3667 Signed-off-by: Karel Zak sys-utils/fstab.5.adoc | 2 ++ sys-utils/swapon.8.adoc | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+) commit ff89d9c4a0c1a5198eb4fc34da895c2598516bdc Author: Thomas Weißschuh Date: Mon Jun 2 23:10:35 2025 +0200 lsclocks: add auxiliary clocks Add support for the auxiliary posix clocks introduced in Linux 6.17. When auxiliary clocks are not supported, no output line is generated. When an auxiliary clock is not enabled an output line without TIME columns is generated. Signed-off-by: Thomas Weißschuh misc-utils/lsclocks.1.adoc | 1 + misc-utils/lsclocks.c | 35 ++++++++++++++++++++++++++++++++++- tests/ts/misc/lsclocks | 3 ++- 3 files changed, 37 insertions(+), 2 deletions(-) commit c3882c00c16bf8e044991e057acdf1bc00a3b374 Author: Karel Zak Date: Mon Aug 11 13:08:13 2025 +0200 mount: add --beneath support Signed-off-by: Karel Zak bash-completion/mount | 1 + sys-utils/mount.8.adoc | 12 ++++++++++++ sys-utils/mount.c | 10 ++++++++-- 3 files changed, 21 insertions(+), 2 deletions(-) commit cbf05f69587111d88d0dc3b16bb4f9fd934a0f62 Author: Karel Zak Date: Mon Aug 11 13:07:38 2025 +0200 libmount: add MOVE_MOUNT_BENEATH support Fixes: https://github.com/util-linux/util-linux/issues/2604 Signed-off-by: Karel Zak include/mount-api-utils.h | 6 +++++- libmount/docs/libmount-sections.txt | 2 ++ libmount/src/context.c | 26 ++++++++++++++++++++++++++ libmount/src/hook_mount.c | 7 ++++++- libmount/src/libmount.h.in | 3 +++ libmount/src/libmount.sym | 2 ++ libmount/src/mountP.h | 1 + 7 files changed, 45 insertions(+), 2 deletions(-) commit ca2121e1bf0d1f28790eb33d66bf6b399fd426d0 Author: Karel Zak Date: Mon Aug 11 13:10:53 2025 +0200 mount: (bash-completion) add --exclusive Signed-off-by: Karel Zak bash-completion/mount | 1 + 1 file changed, 1 insertion(+) commit 31a9fc781e92501a98f521c74845c333547989ac Merge: 125f452fc 489ebfe70 Author: Karel Zak Date: Mon Aug 11 11:22:10 2025 +0200 Merge branch 'PR/libmount-fanotify' of https://github.com/karelzak/util-linux-work * 'PR/libmount-fanotify' of https://github.com/karelzak/util-linux-work: libmount: ifdef for fanotify support on older systems libmount: (monitor) add fanotify_next_fs() libmount: (monitor) add basic fanotify support libmount: (monitor) rename public API to "mountinfo" libmount: (monitor) clean up mountinfo function names libmount: add mnt_fs_is_{moved,attached,detached} functions libmount: (monitor) cleanup userspace_add_watch() exiting libmount: (monitor) check for utab delete libmount: (monitor) optimize inotify utab watch libmount: (monitor) cleanup op_process_event() return codes libmount: (monitor) add next-fs API libmount: (monitor) epoll_wait code consolidation libmount: (monitor) require entry-specific functions libmount: (monitor) clean up internal names libmount: (monitor) support type-specific data libmount: (monitor) support additional monitor identifiers libmount: split monitor code to more files commit 489ebfe7046136ca02b6df7ec5b75f3daa2980fb Author: Karel Zak Date: Thu Aug 7 13:15:32 2025 +0200 libmount: ifdef for fanotify support on older systems Signed-off-by: Karel Zak configure.ac | 2 ++ libmount/src/monitor_fanotify.c | 21 +++++++++++++++++++++ libmount/src/version.c | 3 +++ meson.build | 4 +++- 4 files changed, 29 insertions(+), 1 deletion(-) commit f744e6391b1af5bb68e79b6e6d59f842450c2526 Author: Karel Zak Date: Tue Aug 5 15:39:53 2025 +0200 libmount: (monitor) add fanotify_next_fs() This function returns a unique filesystem ID to the caller. Signed-off-by: Karel Zak libmount/src/monitor.c | 23 ++++++++++++-- libmount/src/monitor_fanotify.c | 70 ++++++++++++++++++++++++++++++++++++++--- 2 files changed, 86 insertions(+), 7 deletions(-) commit 125f452fc20e21eb27e42b45c171ef2d1f363987 Author: Benno Schulenberg Date: Tue Aug 5 11:24:43 2025 +0200 chrt: (man,usage) put --pid first in synopses and examples, for clarity When --pid is among the options, it is clearest when it is given as the first option, because then it doesn't sit between the policy option and the somewhat related priority value. It creates some kind of symmetry: the --pid option first, then other things, and the actual PID last. CC: Madadi Vineeth Reddy Signed-off-by: Benno Schulenberg schedutils/chrt.1.adoc | 12 ++++++------ schedutils/chrt.c | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) commit e3e3d01efc5a67325e03d9b791388216a39330fd Author: Benno Schulenberg Date: Tue Aug 5 11:24:42 2025 +0200 chrt: (man) improve wording and markup of some examples CC: Madadi Vineeth Reddy Signed-off-by: Benno Schulenberg schedutils/chrt.1.adoc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 223a502b02087bf65b32cf6c896149e0aa1f4404 Author: Benno Schulenberg Date: Tue Aug 5 11:24:41 2025 +0200 chrt: (man,usage) mark the priority value as optional in the synopses The priority value is optional in some cases, so it cannot be listed as required. CC: Madadi Vineeth Reddy Signed-off-by: Benno Schulenberg schedutils/chrt.1.adoc | 2 +- schedutils/chrt.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) commit d15fbc946f73a2b7942d594b3e1cbc2ad89d0554 Author: Benno Schulenberg Date: Tue Aug 5 11:24:40 2025 +0200 chrt: produce better error message for missing priority with implied -r Since commit 4c425142844d, the following two equivalent commands produce different error messages: # chrt -r ls NEWS chrt: invalid priority argument: 'ls' # chrt ls NEWS chrt: unsupported priority value for the policy: 0: see --max for valid range The latter error message is enigmatic: where did the user specify '0'? Before the mentioned commit, the second command would produce the same error message as the first. Restore that behavior. CC: Madadi Vineeth Reddy Signed-off-by: Benno Schulenberg schedutils/chrt.c | 3 +++ 1 file changed, 3 insertions(+) commit e3e54259e780138d0c7941bbdcb0723bb279516c Author: Karel Zak Date: Wed Jun 11 13:49:05 2025 +0200 libmount: (monitor) add basic fanotify support * add mnt_monitor_enable_fanotify() to add the new monitor * add MNT_MONITOR_TYPE_FANOTIFY to identify events * add new monitor to the test Signed-off-by: Karel Zak include/pathnames.h | 3 +- libmount/docs/libmount-sections.txt | 1 + libmount/meson.build | 1 + libmount/src/Makemodule.am | 3 +- libmount/src/libmount.h.in | 2 + libmount/src/libmount.sym | 1 + libmount/src/monitor.c | 11 +- libmount/src/monitor_fanotify.c | 261 ++++++++++++++++++++++++++++++++++++ libmount/src/monitor_mountinfo.c | 7 +- 9 files changed, 284 insertions(+), 6 deletions(-) commit cfebab23ab06cf2b646b4c0afdbc0ebb9e25c6dd Author: Karel Zak Date: Wed Aug 6 14:09:12 2025 +0200 libmount: (monitor) rename public API to "mountinfo" There will be more kernel monitors in the future. Ensure the API is easy to understand. * Rename MNT_MONITOR_TYPE_KERNEL to MNT_MONITOR_TYPE_MOUNTINFO * Rename mnt_monitor_enable_kernel() to mnt_monitor_enable_mountinfo() The change is backward compatible; the old names are still usable. Signed-off-by: Karel Zak libmount/docs/libmount-sections.txt | 3 ++- libmount/src/libmount.h.in | 7 ++++++- libmount/src/libmount.sym | 1 + libmount/src/monitor.c | 12 ++++++------ libmount/src/monitor_mountinfo.c | 27 +++++++++++++++++++++------ 5 files changed, 36 insertions(+), 14 deletions(-) commit 938264b1ff764ea60e8c9fb257bddc2070850b86 Author: Karel Zak Date: Wed Aug 6 13:48:27 2025 +0200 libmount: (monitor) clean up mountinfo function names There will be more kernel monitors in the future. It's better to use names specific to the monitoring method rather than the generic "kernel." This commit renames only internal components. Signed-off-by: Karel Zak libmount/src/monitor_mountinfo.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) commit 8c76b852717fc35fc07b4805239cf7b51f3d39d9 Author: Karel Zak Date: Wed Jul 16 13:52:07 2025 +0200 libmount: add mnt_fs_is_{moved,attached,detached} functions Let's use these simple functions to report what the last operation or status detected by the library means to the filesystem. It will be used by the fanotify monitor as well. Signed-off-by: Karel Zak libmount/docs/libmount-sections.txt | 3 +++ libmount/src/context_umount.c | 2 ++ libmount/src/fs.c | 45 +++++++++++++++++++++++++++++++++++++ libmount/src/hook_mount.c | 9 ++++++++ libmount/src/hook_mount_legacy.c | 8 +++++++ libmount/src/libmount.h.in | 4 ++++ libmount/src/libmount.sym | 3 +++ libmount/src/mountP.h | 20 +++++++++++++++++ libmount/src/tab_parse.c | 5 +++-- 9 files changed, 97 insertions(+), 2 deletions(-) commit f9c62adb72da799d230acdfce1fd5369e127c68f Author: Karel Zak Date: Wed Jun 11 11:38:10 2025 +0200 libmount: (monitor) cleanup userspace_add_watch() exiting Signed-off-by: Karel Zak libmount/src/monitor_utab.c | 70 +++++++++++++++++---------------------------- 1 file changed, 27 insertions(+), 43 deletions(-) commit d92f1366c838fd8e4f7508a4431138384dbff259 Author: Karel Zak Date: Tue Jun 10 14:06:53 2025 +0200 libmount: (monitor) check for utab delete Also, monitor for "rm -rf /run/mount" to reinitialize the monitor. Signed-off-by: Karel Zak libmount/src/monitor_utab.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) commit a84f6b92b530275ada50d18357ddb2b6ff4618c1 Author: Karel Zak Date: Tue Jun 10 13:51:23 2025 +0200 libmount: (monitor) optimize inotify utab watch Don't repeat no-op inotify_add_watch() calls. This happens when we monitor the /run[/mount] directory before the utab.event file exists. The old version just tries to create a watch and ignores ENOENT errors. It seems better to remember the path of the last created watch and not repeat it. Signed-off-by: Karel Zak libmount/src/monitor_utab.c | 71 +++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 65 insertions(+), 6 deletions(-) commit 89c310c9f4ce1f1d37eca489c0fb467cacbb01ff Author: Karel Zak Date: Tue Jun 10 12:15:28 2025 +0200 libmount: (monitor) cleanup op_process_event() return codes Let's use usual concept (<0 error; 0 success; 1 nothing). Signed-off-by: Karel Zak libmount/src/monitor.c | 4 ++-- libmount/src/monitor_mountinfo.c | 9 ++++----- libmount/src/monitor_utab.c | 13 ++++++++----- 3 files changed, 14 insertions(+), 12 deletions(-) commit dbd9c5143f2a75cde1d8eb5ccb66412fb89ac64e Author: Karel Zak Date: Tue Jun 10 11:05:20 2025 +0200 libmount: (monitor) add next-fs API Signed-off-by: Karel Zak libmount/docs/libmount-sections.txt | 1 + libmount/src/libmount.h.in | 3 +++ libmount/src/libmount.sym | 1 + libmount/src/monitor.c | 48 +++++++++++++++++++++++++++++++++++-- libmount/src/monitor.h | 2 ++ 5 files changed, 53 insertions(+), 2 deletions(-) commit 6a880b4bd9e03ee049cb5996ccca44cb11fccc66 Author: Karel Zak Date: Wed May 28 11:18:57 2025 +0200 libmount: (monitor) epoll_wait code consolidation The epoll_wait() and op_process_event() are called in two places. Move the code to read_epoll_events() and process everything in one place Signed-off-by: Karel Zak libmount/src/monitor.c | 108 +++++++++++++++++++++++++++---------------------- 1 file changed, 59 insertions(+), 49 deletions(-) commit 889de679802741c3ad28374b58408a45aa3c188b Author: Karel Zak Date: Tue May 27 13:23:39 2025 +0200 libmount: (monitor) require entry-specific functions libmount/src/monitor.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) commit 9d93bc087b3b0da67b5eef0a1319c5ea016c0f29 Author: Karel Zak Date: Tue May 27 13:14:34 2025 +0200 libmount: (monitor) clean up internal names In future changes, we need to process active monitor entries in entry type-specific code to return data from events. This requires a slight change in the function's logic, so it makes sense to rename the function according to the new logic, meaning changes --> active, verify --> process. The patch also replaces bit fields with booleans. Signed-off-by: Karel Zak libmount/src/monitor.c | 24 ++++++++++++------------ libmount/src/monitor.h | 11 +++++++---- libmount/src/monitor_mountinfo.c | 8 ++++---- libmount/src/monitor_utab.c | 8 ++++---- 4 files changed, 27 insertions(+), 24 deletions(-) commit cfb81f8959b67e678d01e3048a80871bbf6cc18d Author: Karel Zak Date: Tue May 27 12:04:24 2025 +0200 libmount: (monitor) support type-specific data Signed-off-by: Karel Zak libmount/src/monitor.c | 4 ++++ libmount/src/monitor.h | 2 ++ 2 files changed, 6 insertions(+) commit 3285ebe18773dfcd6ed7ae7a1a9952d0abb3fb04 Author: Karel Zak Date: Wed May 21 12:39:17 2025 +0200 libmount: (monitor) support additional monitor identifiers This is necessary to support multiple monitors of the same type. Currently, only one monitor per type is supported. Signed-off-by: Karel Zak libmount/src/monitor.c | 5 +++-- libmount/src/monitor.h | 3 ++- libmount/src/monitor_mountinfo.c | 2 +- libmount/src/monitor_utab.c | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) commit defd0a7eb534df5d4e3c5d72e228bcf8c18b8b72 Author: Karel Zak Date: Wed May 21 11:43:57 2025 +0200 libmount: split monitor code to more files Signed-off-by: Karel Zak libmount/meson.build | 3 + libmount/src/Makemodule.am | 10 +- libmount/src/monitor.c | 428 +-------------------------------------- libmount/src/monitor.h | 43 ++++ libmount/src/monitor_mountinfo.c | 167 +++++++++++++++ libmount/src/monitor_utab.c | 248 +++++++++++++++++++++++ 6 files changed, 474 insertions(+), 425 deletions(-) commit ec46779106a2573082b14dfda679471a42dcba97 Merge: b73d3195d 8195c6e7f Author: Karel Zak Date: Tue Aug 5 13:22:30 2025 +0200 Merge branch 'patch-1' of https://github.com/neheb/util-linux * 'patch-1' of https://github.com/neheb/util-linux: meson: use curses dep for ncurses commit b73d3195d5102cec7a18ffa8bd1f3fe80b1bedec Merge: b8693c6f2 9a6134a51 Author: Karel Zak Date: Tue Aug 5 13:22:10 2025 +0200 Merge branch 'PR/libmount-excl' of https://github.com/karelzak/util-linux-work * 'PR/libmount-excl' of https://github.com/karelzak/util-linux-work: mount: add --exclusive command line option libmount: Add support for FSCONFIG_CMD_CREATE_EXCL lib: add FSCONFIG_CMD_CREATE_EXCL commit b8693c6f29aa477ed1d25ba093e3a6b76eb37e95 Author: Karel Zak Date: Tue Aug 5 13:18:32 2025 +0200 setpriv: improve landlock usage() output * Add help for rights names * Keep usage() output for Landlock more structured * Add a note to the man page that "fs" is subject to change Signed-off-by: Karel Zak sys-utils/setpriv-landlock.c | 57 +++++++++++++++++++++++--------------------- sys-utils/setpriv-landlock.h | 4 ++-- sys-utils/setpriv.1.adoc | 3 +++ sys-utils/setpriv.c | 10 ++++---- 4 files changed, 40 insertions(+), 34 deletions(-) commit 409462cc073c8d0067ab9d87b4d408d61b6545a9 Author: Günther Noack Date: Sat Aug 2 17:43:05 2025 +0200 setpriv: Add support for LANDLOCK_ACCESS_FS_IOCTL_DEV The LANDLOCK_ACCESS_FS_IOCTL_DEV access right controls whether the process may use IOCTL on opened device files. It is available since Linux 6.10. Compatibility remark: With this change, using the --landlock-access="fs" shortcut now requires Linux 6.10+, where it previously required Linux 6.2+. sys-utils/setpriv-landlock.c | 3 +++ 1 file changed, 3 insertions(+) commit 9a6134a518578575da8dbcf4a3cea9f460396ffe Author: Karel Zak Date: Thu Jul 31 12:31:36 2025 +0200 mount: add --exclusive command line option The new option ensures that the kernel does not reuse existing superblock. The new option is available to non-root users as it does not affect the superblock itself or any other aspects of the mount process. It makes the current mounting more restrictive, so it makes sense to allow it for non-root users. Signed-off-by: Karel Zak sys-utils/mount.8.adoc | 17 ++++++++++++++++- sys-utils/mount.c | 14 +++++++++++--- 2 files changed, 27 insertions(+), 4 deletions(-) commit be65bf2d93df3f89d488250575400449a6a1ae3c Author: Karel Zak Date: Thu Jul 31 12:28:33 2025 +0200 libmount: Add support for FSCONFIG_CMD_CREATE_EXCL * Add API functions mnt_context_enable_exclusive() and mnt_context_is_exclusive() * Use the new flag when creating the superblock Signed-off-by: Karel Zak libmount/docs/libmount-sections.txt | 2 ++ libmount/src/context.c | 27 ++++++++++++++++++++++++++- libmount/src/hook_mount.c | 27 ++++++++++++++++++++++----- libmount/src/libmount.h.in | 3 +++ libmount/src/libmount.sym | 5 +++++ libmount/src/mountP.h | 1 + 6 files changed, 59 insertions(+), 6 deletions(-) commit ddb4364671757edf098f73a83965cba2a298f363 Author: Karel Zak Date: Thu Jul 31 12:25:18 2025 +0200 lib: add FSCONFIG_CMD_CREATE_EXCL * add FSCONFIG_CMD_CREATE_EXCL to mount-api-utils.h * (like libc) define FSCONFIG_ macros to be usable for #ifdefs * add fallback for FSCONFIG_CMD_CREATE_EXCL as fsconfig_command enum in system headers may be without the flag Signed-off-by: Karel Zak include/mount-api-utils.h | 35 ++++++++++++++++++++++++++--------- 1 file changed, 26 insertions(+), 9 deletions(-) commit 8195c6e7f9be88a7ab94571f2770ee11a38c02b8 Author: Rosen Penev Date: Wed Jul 30 14:40:53 2025 -0700 meson: use curses dep for ncurses curses is special in that it's able to find ncurses in a lot more locations that ncurses, which only looks at pkg-config and cmake. This is somewhat useful with exotic OSes like macOS. meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 4c425142844d045b4f898e84c8f29293265214c0 Author: Madadi Vineeth Reddy Date: Tue Jul 29 15:17:03 2025 +0530 chrt: Allow optional priority for non‑prio policies without --pid This extends commit e7a2d62434c2 ("chrt: Make priority optional for policies that don't use it") so that priority arguments are optional even when --pid is not specified. Before this patch: $ chrt --other ls -lh chrt: invalid priority argument: 'ls' -> only "chrt --other 0 ls -lh" would work After this patch: $ chrt --other ls -lh $ chrt --other 0 ls -lh -> both now work If an out‑of‑range priority is given, it reports an error: $ chrt --other 1 ls -lh unsupported priority value for the policy: 1 (see --max for valid range) Changes in v2: - Removed is_number() and used isdigit_string() (Karel Zak) - used _() for translation (Karel Zak) Fixes: e7a2d62434c2 ("chrt: Make priority optional for policies that don't use it") Signed-off-by: Madadi Vineeth Reddy schedutils/chrt.c | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) commit f9ec1e1c44bed3456642710b818ba47848db7fff Merge: f4229591e 6d46bbc08 Author: Karel Zak Date: Tue Jul 29 14:18:30 2025 +0200 Merge branch 'master' of https://github.com/hongxu-jia/util-linux * 'master' of https://github.com/hongxu-jia/util-linux: tests/helpers/test_sigstate.c: explicitly reset SIGINT to default action after trapping commit f4229591efa05b69c4eadf37cf3ab0e1710a2440 Merge: f4beaacc7 308811f67 Author: Karel Zak Date: Tue Jul 29 14:16:31 2025 +0200 Merge branch 'ldattach_mtu' of https://github.com/SeppoTakalo/util-linux * 'ldattach_mtu' of https://github.com/SeppoTakalo/util-linux: ldattach: Allow changing the MTU for GSM0710 framing commit f4beaacc7fddc10ec1517234309c1f9a2913ebcb Merge: c24654e0d 70ae9deaa Author: Karel Zak Date: Tue Jul 29 12:58:32 2025 +0200 Merge branch 'lsfd--packet-raw-protocol' of https://github.com/masatake/util-linux * 'lsfd--packet-raw-protocol' of https://github.com/masatake/util-linux: lsfd: add PACKET.PROTOCOL.RAW, a new column commit 70ae9deaaac7a621c87ba7613f112cfee515bd8d Author: Masatake YAMATO Date: Mon Jan 6 03:34:22 2025 +0900 lsfd: add PACKET.PROTOCOL.RAW, a new column Using sizeof for the calculating buffer size is suggested by @karelzak. Signed-off-by: Masatake YAMATO lsfd-cmd/lsfd.1.adoc | 5 +++- lsfd-cmd/lsfd.c | 5 +++- lsfd-cmd/lsfd.h | 1 + lsfd-cmd/sock-xinfo.c | 38 ++++++++++++++------------ tests/expected/lsfd/mkfds-mapped-packet-socket | 16 ++++++++--- tests/ts/lsfd/mkfds-mapped-packet-socket | 37 +++++++++++++------------ 6 files changed, 60 insertions(+), 42 deletions(-) commit c24654e0d5976fac7f785b8bf4f8217cc1df2772 Author: Karel Zak Date: Tue Jul 29 11:40:16 2025 +0200 mkfs.cramfs: avoid uninitialized value [coverity scan] Signed-off-by: Karel Zak disk-utils/mkfs.cramfs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 6d46bbc0896b963486546d5d1b3d9241a2d5d0f8 Author: Hongxu Jia Date: Mon Jul 28 20:35:13 2025 +0800 tests/helpers/test_sigstate.c: explicitly reset SIGINT to default action after trapping After upgrading bash to 5.3 to contain commit [1], if SIGINT was trapped in asynchronous subshell, bash called set_signal_async_ignored to make sure processes that are created by this asynchronous subshell to ignore SIGINT. And it caused test case `kill/decode' failed, the signal INT was existed in both of Blocked and Ignored $ ./tests/run.sh --use-system-commands --parsable --show-diff kill/decode ... diff-{{{ |--- /usr/lib/util-linux/ptest/tests/expected/kill/decode 2011-04-05 23:00:00.000000000 +0000 |+++ /usr/lib/util-linux/ptest/tests/output/kill/decode 2025-07-28 12:09:46.279000000 +0000 @@ -16,5 +16,5 @@ Pending (thread): INT ILL Pending (process): USR1 Blocked: INT ILL ABRT FPE USR1 SEGV TERM -Ignored: HUP QUIT TRAP PIPE ALRM +Ignored: HUP INT QUIT TRAP PIPE ALRM Caught: ILL USR1 }}}-diff ... Explicitly reset SIGINT to default action after trapping, then the test case `kill/decode' works on both of old (<5.3) and new (>=5.3) bash [1] https://cgit.git.savannah.gnu.org/cgit/bash.git/commit/?h=devel&id=a5d2617c7a7e602ace1f4149987cdfd075c4e762 Signed-off-by: Hongxu Jia tests/helpers/test_sigstate.c | 1 + 1 file changed, 1 insertion(+) commit 308811f67d68403ce1671a6863efa92d41ee2544 Author: Seppo Takalo Date: Thu Jul 24 14:38:59 2025 +0300 ldattach: Allow changing the MTU for GSM0710 framing Traditionally ldattach have hard coded MTU of 127 bytes which differs from defaults proposed in 3GPP TS 27.010 which is 31 bytes when basic framing is used. Add '-m ' parameter that is only GSM0710 specific and already handled by the kernel. Use same value for both MTU and MRU. Signed-off-by: Seppo Takalo bash-completion/ldattach | 5 +++++ sys-utils/ldattach.8.adoc | 5 ++++- sys-utils/ldattach.c | 21 +++++++++++++-------- 3 files changed, 22 insertions(+), 9 deletions(-) commit 4aded4674f34db836d0178e9557f73c4fc301e12 Merge: 0c5d55e52 707677ce3 Author: Karel Zak Date: Mon Jul 28 11:51:43 2025 +0200 Merge branch 'PR/column-colors' of https://github.com/karelzak/util-linux-work * 'PR/column-colors' of https://github.com/karelzak/util-linux-work: column: add support for color scheme libsmartcols: add function to set/get header colors lib/strutils: add ul_optstr_get_value() lib/color-names: Fix color name canonicalization column: add --color[=] to control colorization column: add basic colors support commit 0c5d55e52d27be933e9e61b82bd386943bd9e05c Author: 胡玮文 Date: Mon Jul 28 14:32:13 2025 +0800 libblkid: (ext) reduce false positive Signed-off-by: 胡玮文 libblkid/src/superblocks/ext.c | 9 +++++++++ 1 file changed, 9 insertions(+) commit 2e4c95b6c13d00c68cc27a203e031b921a7d3e9d Merge: cf1d71672 caf79c607 Author: Karel Zak Date: Thu Jul 24 13:18:43 2025 +0200 Merge branch 'PR/fsck.cramfs-memcpy' of https://github.com/karelzak/util-linux-work * 'PR/fsck.cramfs-memcpy' of https://github.com/karelzak/util-linux-work: fsck.cramfs: check buffer size for memcpy() commit cf1d71672f34e00ff3ce972c4779209866af7a96 Merge: fc56a4c50 434a5633a Author: Karel Zak Date: Thu Jul 24 13:18:01 2025 +0200 Merge branch 'PR/setpriv-getgroups' of https://github.com/karelzak/util-linux-work * 'PR/setpriv-getgroups' of https://github.com/karelzak/util-linux-work: setpriv: Improve getgroups() Portability commit 434a5633a563066357bbc3f331838ed41041ec1a Author: Karel Zak Date: Mon Jul 21 08:16:25 2025 +0200 setpriv: Improve getgroups() Portability setpriv(1) is Linux-only, and on Linux, getgroups() returns at least one group. However, it's better to use more portable and generic code patterns and assume that getgroups() can return zero. Fixes: https://github.com/util-linux/util-linux/issues/3654 Reported-by: Alejandro Colomar Signed-off-by: Karel Zak sys-utils/setpriv.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) commit fc56a4c50a009ea6850f6c585cbbd53819399ed4 Author: Karel Zak Date: Thu Jul 24 12:48:00 2025 +0200 libblkid: improve UUID_SUB= description Fixes: https://github.com/util-linux/util-linux/issues/3657 Signed-off-by: Karel Zak libblkid/libblkid.3.adoc | 2 +- libblkid/src/superblocks/superblocks.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit caf79c6073bed928653ed4a8c495c5f111973afb Author: Karel Zak Date: Mon Jul 21 09:48:06 2025 +0200 fsck.cramfs: check buffer size for memcpy() - reuse MAX_INPUT_NAMELEN - check path buffer size before memcpy() to the buffer - check for zero path before use it Signed-off-by: Karel Zak disk-utils/cramfs.h | 9 +++++++++ disk-utils/fsck.cramfs.c | 12 ++++++++---- disk-utils/mkfs.cramfs.c | 8 -------- 3 files changed, 17 insertions(+), 12 deletions(-) commit 707677ce30090d685e71df52bc40684fd87c435c Author: Karel Zak Date: Tue Jul 15 15:38:46 2025 +0200 column: add support for color scheme Signed-off-by: Karel Zak bash-completion/column | 1 + text-utils/column.1.adoc | 37 ++++++++++++++++++++++++++++++++++++- text-utils/column.c | 37 +++++++++++++++++++++++++++++++++++-- 3 files changed, 72 insertions(+), 3 deletions(-) commit 2a64fccdd3acea0996f0d8b38574eda12dab0eea Author: Karel Zak Date: Tue Jul 15 15:37:56 2025 +0200 libsmartcols: add function to set/get header colors Signed-off-by: Karel Zak libsmartcols/docs/libsmartcols-sections.txt | 2 ++ libsmartcols/src/column.c | 54 +++++++++++++++++++++++++++-- libsmartcols/src/libsmartcols.h.in | 4 +++ libsmartcols/src/libsmartcols.sym | 2 ++ 4 files changed, 59 insertions(+), 3 deletions(-) commit b38f39fc9a4f14a9c96ccbf4b1f5c6297b678eaa Author: Karel Zak Date: Tue Jul 15 15:36:22 2025 +0200 lib/strutils: add ul_optstr_get_value() Signed-off-by: Karel Zak include/strutils.h | 1 + lib/strutils.c | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) commit 44ebe68c24da0bcf5aa1f48017d47d2d8995b0ed Author: Karel Zak Date: Tue Jul 15 15:35:05 2025 +0200 lib/color-names: Fix color name canonicalization Return NULL rather than a random string if it cannot be translated to the color sequence. Signed-off-by: Karel Zak lib/color-names.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) commit 5a75fb2b9e384c61a4b2afd13fe9bba219d5bd93 Author: Benno Schulenberg Date: Wed Jul 9 11:07:34 2025 +0200 textual: harmonize the messages for invalid count and timeout values Signed-off-by: Benno Schulenberg login-utils/sulogin.c | 2 +- misc-utils/findmnt.c | 2 +- misc-utils/uuidgen.c | 2 +- misc-utils/waitpid.c | 5 ++--- sys-utils/flock.c | 3 +-- sys-utils/wdctl.c | 4 ++-- term-utils/agetty.c | 2 +- term-utils/wall.c | 4 ++-- 8 files changed, 11 insertions(+), 13 deletions(-) commit 325a26999545afb0e55949d62ab28036560c8b4c Author: Benno Schulenberg Date: Wed Jul 9 11:07:33 2025 +0200 textual: harmonize the messages for an invalid size, length, and offset The added words "argument" or "value" or "specified" don't make things clearer and are just unneeded verbosity. Also, use all lowercase. Signed-off-by: Benno Schulenberg disk-utils/addpart.c | 2 +- disk-utils/mkswap.c | 4 ++-- disk-utils/resizepart.c | 2 +- misc-utils/blkid.c | 4 ++-- misc-utils/fadvise.c | 4 ++-- misc-utils/lsclocks.c | 2 +- misc-utils/pipesz.c | 2 +- misc-utils/wipefs.c | 2 +- sys-utils/fallocate.c | 6 +++--- 9 files changed, 14 insertions(+), 14 deletions(-) commit 6a98bbf4c5cc7a7012974430a0539c2f84800e96 Author: Benno Schulenberg Date: Wed Jul 9 11:07:32 2025 +0200 column: call gettext() on an error message only when it gets printed Just mark error messages for translation, with gettext_noop(), and pass them untranslated to the subroutines. Then call gettext() on such a message only when an error occurs and the message gets printed. Signed-off-by: Benno Schulenberg text-utils/column.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) commit 15de47b9c955b9e3451d864e16dd646169316331 Merge: 73aa64cc8 9938ae4d4 Author: Karel Zak Date: Mon Jul 14 13:45:06 2025 +0200 Merge branch 'cpulist-stride' of https://github.com/jmr/util-linux * 'cpulist-stride' of https://github.com/jmr/util-linux: cpuset: Use stride in cpulist_create commit ed6bc65cac382d58e5e3881149a9cbc7486cca03 Author: Karel Zak Date: Tue Jul 8 17:02:52 2025 +0200 column: add --color[=] to control colorization This implements terminal-colors.d(5) behavior. Signed-off-by: Karel Zak bash-completion/column | 5 +++++ meson.build | 3 ++- text-utils/Makemodule.am | 2 +- text-utils/column.1.adoc | 5 +++++ text-utils/column.c | 21 +++++++++++++++++++-- 5 files changed, 32 insertions(+), 4 deletions(-) commit 9938ae4d49f64cbcfb48158d537454ac740d7dba Author: Jesse Rosenstock Date: Tue Jul 1 12:38:24 2025 +0200 cpuset: Use stride in cpulist_create Format cpu lists for `taskset -c`, `lscpu`, etc. using stride. This usually produces shorter output. Now: % ./taskset -c 0-24:2,25-47:4 ./taskset -pc 0 pid 3937653's current affinity list: 0-24:2,25-45:4 Previously: % ./taskset -c 0-23:2,24-47:4 ./taskset -pc 0 pid 3933321's current affinity list: 0,2,4,6,8,10,12,14,16,18,20,22,24,28,32,36,40,44 The ranges are constructed greedily; in general it is difficult to construct a minimal list. % ./taskset -c 0-63:3,0-63:4 ./taskset -pc 0 pid 3926213's current affinity list: 0,3,4-8:2,9-15:3,16-20:2,21-27:3,28-32:2,33-39:3,40-44:2,45 Signed-off-by: Jesse Rosenstock lib/cpuset.c | 73 ++++++++++++++++++++++----------- tests/expected/lscpu/lscpu-x86_64-64cpu | 6 +-- tests/expected/misc/bits-list | 2 +- tests/expected/misc/bits-parse-mask | 2 +- tests/expected/schedutils/cpuset | 4 +- 5 files changed, 57 insertions(+), 30 deletions(-) commit 717c5693832b89ee7526d6377c72b844a6b7c3e5 Author: Karel Zak Date: Mon Jul 7 15:10:52 2025 +0200 column: add basic colors support Signed-off-by: Karel Zak text-utils/column.1.adoc | 7 +++++++ text-utils/column.c | 1 + 2 files changed, 8 insertions(+) commit 73aa64cc8f4e3cda62950a937bf531e54bdc7f06 Author: Benno Schulenberg Date: Thu Jul 3 16:47:52 2025 +0200 chrt: do not try to interpret any other option as a PID either When doing, for example, `chrt --pid --max`, it would report: chrt: invalid PID argument: '--max' This mistakenly gave the impression that the PID argument has to follow directly after the --pid option. Avoid this by delaying the parsing of a PID until after all options have been parsed. Temporarily set 'ctl->pid' to zero to indicate that a PID needs to be read. After this change, `chrt --pid --max` will simply report the minimum and maximum valid priorities. And `chrt --pid -v`: chrt: too few arguments Also, add a missing call of gettext() for the other error message. CC: Madadi Vineeth Reddy Signed-off-by: Benno Schulenberg schedutils/chrt.c | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) commit 7f47aa34942e4f2ba06cf142f2f9aa39ba2ba4c3 Author: Benno Schulenberg Date: Thu Jul 3 16:47:51 2025 +0200 chrt: simplify the other check for too few arguments Without option --pid, always at least two arguments are needed: the value and a . (The 'need_prio' variable is relevant only for the --pid case.) Also, make the error message more informative. CC: Madadi Vineeth Reddy Signed-off-by: Benno Schulenberg schedutils/chrt.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) commit 624d2d37a201ec74d4c597a4c5886600aa2566be Author: Benno Schulenberg Date: Thu Jul 3 16:47:50 2025 +0200 chrt: do not try to interpret the --pid option itself as a PID When not specifying a PID with --pid, `chrt` would report: chrt: invalid PID argument: '--pid' That was silly. After this change, `chrt --pid` will report: chrt: too few arguments Signed-off-by: Benno Schulenberg schedutils/chrt.c | 2 ++ 1 file changed, 2 insertions(+) commit e3da3b885e3176fc56c74b3935124df8cf2ecad5 Author: Benno Schulenberg Date: Thu Jul 3 16:47:49 2025 +0200 chrt: with more than one argument, interpret first argument as priority The first argument is a priority not only for `chrt --pid ` but also for `chrt [...]`. This fixes an oversight in recent commit e7a2d62434. Reviewed-by: Madadi Vineeth Reddy Tested-by: Madadi Vineeth Reddy Signed-off-by: Benno Schulenberg schedutils/chrt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 6c87a3ac5ee96194e0e461db24b1bbfe369bdb59 Author: Jesse Rosenstock Date: Fri Jun 27 09:47:35 2025 +0200 taskset: Accept 0 pid for current process This is useful to print the current mask without using `$$`: `taskset -p 0`. It is also helpful to test taskset: `taskset -c 1-4 taskset -p 0`. This is not easy with `$$`. sched_setaffinity(2)/sched_getaffinity(2) accept 0 for the calling thread, so this seems consistent. As an implementation detail, we replace 0 with getpid(), so the existing pid != 0 <==> "will exec" logic continues to work unchanged. A reasonable alternative would be to interpret just `taskset` (currently an error) as printing the current mask. This seems less orthogonal, and a better use may be found for plain `taskset` in the future. Signed-off-by: Jesse Rosenstock schedutils/taskset.1.adoc | 8 ++++++++ schedutils/taskset.c | 13 ++++++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) commit 4581ede384f22983d6155768635ce43cb5304cb0 Author: Karel Zak Date: Wed Jul 2 12:25:45 2025 +0200 lib/path: avoid double free() for cpusets Addresses: https://github.com/util-linux/util-linux/issues/3641 Signed-off-by: Karel Zak lib/path.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit 02955d9434396df4019132351d8264b74811dc3f Author: Karel Zak Date: Wed Jul 2 11:48:22 2025 +0200 lsblk: fix possible use-after-free Signed-off-by: Karel Zak misc-utils/lsblk.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) commit 5cfeb2b3602dd40f44dec6a9b2db65201b500b0b Merge: 6249a1f34 c83058dcd Author: Karel Zak Date: Wed Jul 2 11:15:01 2025 +0200 Merge branch 'bash-completion-enosys' of https://github.com/akinomyoga/util-linux * 'bash-completion-enosys' of https://github.com/akinomyoga/util-linux: bash-completion: fix function name of enosys completion commit 6249a1f340fb77353d7038f2de281f223bebc41e Merge: 0595f7b28 9dc97c99a Author: Karel Zak Date: Wed Jul 2 11:06:43 2025 +0200 Merge branch 'man-exit-status' of https://github.com/jmr/util-linux * 'man-exit-status' of https://github.com/jmr/util-linux: man: Replace RETURN VALUE with EXIT STATUS in section 1 commit 0595f7b280c5f61fd8e1187b0251d31215d61041 Author: Haelwenn (lanodan) Monnier Date: Tue Jul 1 18:01:05 2025 +0200 rename: change "expression" to "substring" As rename(1) doesn't uses an expression (like regex or glob) but rather a substring. misc-utils/rename.1.adoc | 12 ++++++------ misc-utils/rename.c | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) commit c83058dcd3a4dc703d64e245eff2d5db281a1b79 Author: Koichi Murase Date: Tue Jul 1 22:39:23 2025 +0900 bash-completion: fix function name of enosys completion The function "_enosys_module" referenced by the completion setting on the last line of "bash-completion/enosys" is not defined in the current master. As reported in Ref. [1], this causes the following error on an attempt at argument completion for the "enosys" command: bash: _enosys_module: command not found [1] https://www.reddit.com/r/Fedora/comments/1llmu0w/comment/n00y98k/ Also, the function "_waitpid_module" defined in "bash-completion/enosys" overwrites another completion function of the same name defined in "bash-completion/waitpid". This patch renames the function in "bash-completion/enosys" to the correct one, "_enosys_module". bash-completion/enosys | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 06419fe95b06c7aa8670081a68dbe43a53bff303 Author: Karel Zak Date: Tue Jul 1 10:09:46 2025 +0200 more: Use ul_strtou16() in a robust way Signed-off-by: Karel Zak text-utils/more.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) commit b13f60104b646b45dc9bf43408e6fdec03382ad9 Author: Karel Zak Date: Tue Jul 1 10:00:19 2025 +0200 lsblk: fix memory leak [coverity scan] Signed-off-by: Karel Zak misc-utils/lsblk.c | 1 + 1 file changed, 1 insertion(+) commit 21d1ae71e6d8a85a60c2b96f69fcb8561c9246df Merge: ad85611e6 4e023e452 Author: Karel Zak Date: Tue Jul 1 09:57:25 2025 +0200 Merge branch 'PR/Benno-27Jun' of https://github.com/karelzak/util-linux-work * 'PR/Benno-27Jun' of https://github.com/karelzak/util-linux-work: lsclocks: (man) remove stray backslash, and correct short form of --time script: (man,usage) correct the markup of the synopsis chrt: (man) mark "argument" as optional, and unabbreviate it in usage chrt: (man) correct the short form of --ext, from -d to -e commit ad85611e627e3ae14b16b9ec083fcec274695ceb Merge: 12af18a3a 85cbb5f54 Author: Karel Zak Date: Tue Jul 1 09:56:51 2025 +0200 Merge branch 'PR/more-busy-loop' of https://github.com/karelzak/util-linux-work * 'PR/more-busy-loop' of https://github.com/karelzak/util-linux-work: more: temporarily ignore stdin when waiting for stderr commit 12af18a3ab572c7d0b01ab925ef145d1e49c7069 Merge: 5a8c5975f 7bb1151e5 Author: Karel Zak Date: Tue Jul 1 09:56:22 2025 +0200 Merge branch 'PR/strv-prefix' of https://github.com/karelzak/util-linux-work * 'PR/strv-prefix' of https://github.com/karelzak/util-linux-work: lib/strutils: add ul_ prefix to strrep() and strrem() functions lib/strutils: add ul_ prefix to split() function lib/strutils: add ul_ prefix to strappend() functions lib/strutils: add ul_ prefix to strconcat() functions lib/strutils: add ul_ prefix to startswith() and endswith() lib/strv: use ul_ prefix for strv functions commit 9dc97c99ae5b501a941dd31485671309a8f94573 Author: Jesse Rosenstock Date: Mon Jun 30 20:32:49 2025 +0200 man: Replace RETURN VALUE with EXIT STATUS in section 1 According to man-pages(7), sections 1 and 8 should normally use EXIT STATUS, while sections 2 and 3 should use RETURN VALUE. https://man7.org/linux/man-pages/man7/man-pages.7.html Signed-off-by: Jesse Rosenstock schedutils/coresched.1.adoc | 2 +- schedutils/taskset.1.adoc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 4e023e45276e09bd5d1321bff65ae6589a79d9d6 Author: Benno Schulenberg Date: Fri Jun 27 14:04:08 2025 +0200 lsclocks: (man) remove stray backslash, and correct short form of --time This fixes commits 98f4e4833c and e9ddea7912. CC: Thomas Weißschuh Signed-off-by: Benno Schulenberg misc-utils/lsclocks.1.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 3d997c941819dd1b7aaa2c56859eff9edab2d83f Author: Benno Schulenberg Date: Fri Jun 27 14:04:07 2025 +0200 script: (man,usage) correct the markup of the synopsis Also, use the word "command", to match the wording for the --command option, and improve the wording of the description of that option. This fixes 7268e79bc5. CC: WanBingjiang Signed-off-by: Benno Schulenberg term-utils/script.1.adoc | 5 +++-- term-utils/script.c | 8 ++++---- 2 files changed, 7 insertions(+), 6 deletions(-) commit 24c6d92473dea6c7d9f0763cac57ebe48567b722 Author: Benno Schulenberg Date: Wed Jun 25 10:09:48 2025 +0200 chrt: (man) mark "argument" as optional, and unabbreviate it in usage Also, consistently uppercase "PID", to indicate it is an abbreviation, and align the strings properly. Signed-off-by: Benno Schulenberg schedutils/chrt.1.adoc | 2 +- schedutils/chrt.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) commit c90b61e9cfde771b21b8789f6f1c0a4abbd2f374 Author: Benno Schulenberg Date: Wed Jun 25 10:09:47 2025 +0200 chrt: (man) correct the short form of --ext, from -d to -e This fixes 3e667cf7ed from last month. Signed-off-by: Benno Schulenberg schedutils/chrt.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 85cbb5f5449be75d51b064681f0d92adf31f59be Author: Karel Zak Date: Mon Jun 30 12:20:13 2025 +0200 more: temporarily ignore stdin when waiting for stderr more waits for user commands on stderr, but at the same time, it monitors sigalfd and stdin (for data and POLLHUP|POLLNVAL). We need to temporarily ignore stdin if there is new data waiting for read() (e.g., dmesg | more); otherwise, more_key_command() will end in a busy loop. Fixes: https://github.com/util-linux/util-linux/issues/3634 Signed-off-by: Karel Zak text-utils/more.c | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) commit 5a8c5975fda07c45a78985fe5f38f1f304c79b25 Merge: e9c21d297 6bed45b96 Author: Karel Zak Date: Mon Jun 30 11:34:36 2025 +0200 Merge branch 'fix-lsblk-empty-type' of https://github.com/codefiles/util-linux * 'fix-lsblk-empty-type' of https://github.com/codefiles/util-linux: lsblk: use md as fallback TYPE when md/level empty commit 7bb1151e559710f18682454384c99d7cd67f35fb Author: Karel Zak Date: Mon Jun 30 11:15:30 2025 +0200 lib/strutils: add ul_ prefix to strrep() and strrem() functions Addresses: https://github.com/util-linux/util-linux/issues/3626 Signed-off-by: Karel Zak include/strutils.h | 4 ++-- sys-utils/lscpu-cputype.c | 4 ++-- term-utils/script-playutils.c | 2 +- term-utils/script.c | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) commit 6b627aa34d2977eb347b32040c1c3075daad3d1d Author: Karel Zak Date: Mon Jun 30 11:15:30 2025 +0200 lib/strutils: add ul_ prefix to split() function Addresses: https://github.com/util-linux/util-linux/issues/3626 Signed-off-by: Karel Zak include/strutils.h | 2 +- lib/strutils.c | 2 +- lib/strv.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) commit d42e5e4bc355277b820d98768e2fda52e2d08e76 Author: Karel Zak Date: Mon Jun 30 11:15:30 2025 +0200 lib/strutils: add ul_ prefix to strappend() functions Addresses: https://github.com/util-linux/util-linux/issues/3626 Signed-off-by: Karel Zak include/strutils.h | 4 ++-- include/xalloc.h | 4 ++-- lib/strutils.c | 8 ++++---- libmount/src/fs.c | 2 +- libmount/src/tab.c | 4 ++-- 5 files changed, 11 insertions(+), 11 deletions(-) commit c128ee3ea488174230065f6a35286e01e98996f8 Author: Karel Zak Date: Mon Jun 30 11:15:30 2025 +0200 lib/strutils: add ul_ prefix to strconcat() functions Addresses: https://github.com/util-linux/util-linux/issues/3626 Signed-off-by: Karel Zak include/strutils.h | 6 +++--- lib/strutils.c | 10 +++++----- lib/strv.c | 2 +- libmount/src/tab.c | 2 +- misc-utils/getopt.c | 2 +- misc-utils/logger.c | 4 ++-- sys-utils/ipcutils.c | 2 +- 7 files changed, 14 insertions(+), 14 deletions(-) commit aa07db0ac1449627b3926669b052b07a1d3986ca Author: Karel Zak Date: Mon Jun 30 11:15:30 2025 +0200 lib/strutils: add ul_ prefix to startswith() and endswith() Addresses: https://github.com/util-linux/util-linux/issues/3626 Signed-off-by: Karel Zak disk-utils/partx.c | 2 +- disk-utils/sfdisk.c | 6 +++--- include/strutils.h | 6 +++--- lib/canonicalize.c | 2 +- lib/loopdev.c | 2 +- lib/sysfs.c | 2 +- lib/timeutils.c | 4 ++-- libfdisk/src/utils.c | 2 +- libmount/src/context_mount.c | 4 ++-- libmount/src/context_umount.c | 2 +- libmount/src/hook_idmap.c | 6 +++--- libmount/src/optmap.c | 2 +- libmount/src/optstr.c | 2 +- libmount/src/tab.c | 4 ++-- libmount/src/tab_parse.c | 2 +- libmount/src/tab_update.c | 2 +- libmount/src/utils.c | 4 ++-- misc-utils/lsblk-properties.c | 2 +- misc-utils/lsclocks.c | 2 +- pam_lastlog2/src/pam_lastlog2.c | 6 +++--- sys-utils/lscpu-cputype.c | 2 +- sys-utils/mount.c | 6 +++--- sys-utils/rtcwake.c | 4 ++-- sys-utils/setpriv-landlock.c | 4 ++-- text-utils/bits.c | 12 ++++++------ 25 files changed, 46 insertions(+), 46 deletions(-) commit 6bed45b965b22c8ea5c10c43320c19cf84fd8cfa Author: codefiles <11915375+codefiles@users.noreply.github.com> Date: Fri Jun 27 20:53:16 2025 -0400 lsblk: use md as fallback TYPE when md/level empty misc-utils/lsblk.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit e9c21d2977ac480cec72720515630a1b0b8038d0 Author: Jesse Rosenstock Date: Fri Jun 27 10:27:25 2025 +0200 gitignore: Ignore tests/diff/ and test/output/ These are auto-generated and clutter git status. It's even worse with jj, which will auto-add them. Signed-off-by: Jesse Rosenstock .gitignore | 2 ++ 1 file changed, 2 insertions(+) commit f39ffccf2b9b8dcaaf2069346cc50735c2f0f95d Author: Karel Zak Date: Thu Jun 26 13:47:00 2025 +0200 lib/strv: use ul_ prefix for strv functions The functions are originally from systemd/udev, so it's possible that during static linking, they may collide with other systemd-based components. Fixes: https://github.com/util-linux/util-linux/issues/3626 Signed-off-by: Karel Zak include/strv.h | 47 +++++++++++++------------- lib/env.c | 6 ++-- lib/strv.c | 80 ++++++++++++++++++++++---------------------- libmount/src/context.c | 10 +++--- libmount/src/context_mount.c | 4 +-- login-utils/su-common.c | 1 - misc-utils/logger.c | 8 ++--- sys-utils/chmem.c | 8 ++--- sys-utils/lscpu-riscv.c | 10 +++--- sys-utils/mount.c | 2 +- sys-utils/rtcwake.c | 6 ++-- sys-utils/wdctl.c | 4 +-- sys-utils/zramctl.c | 8 ++--- term-utils/script.c | 2 +- term-utils/wall.c | 10 +++--- text-utils/bits.c | 6 ++-- text-utils/column.c | 24 ++++++------- 17 files changed, 117 insertions(+), 119 deletions(-) commit ba5c614edc4407d5dacea6ce29c0a41f39883f02 Author: Karel Zak Date: Thu Jun 26 11:14:11 2025 +0200 bash-completion: add choom and coresched Addresses: https://github.com/util-linux/util-linux/issues/3469 Signed-off-by: Karel Zak bash-completion/Makemodule.am | 6 ++++++ 1 file changed, 6 insertions(+) commit 8ddea89703ff2a0e7ff61749ccfc85742d623f15 Merge: 7268e79bc 565eb6370 Author: Karel Zak Date: Thu Jun 26 11:02:59 2025 +0200 Merge branch 'master' of https://github.com/ndrake/util-linux * 'master' of https://github.com/ndrake/util-linux: Add missing ;; to -m case (#1) commit 565eb6370c76721bbd0d7fa292d9315a6856f627 Author: Nate Drake Date: Wed Jun 25 18:39:05 2025 -0400 Add missing ;; to -m case (#1) bash-completion/enosys | 1 + 1 file changed, 1 insertion(+) commit 7268e79bc5365034a6e5b38ac5d9bf635e2dafc2 Author: WanBingjiang Date: Thu May 29 16:39:46 2025 +0800 script: support non-option argument as command [kzak@redhat.com: - don't use POSIXLY_CORRECT, use "+" in getopt_long(), - use strv_join() rather than local concat function] Based-on: https://github.com/util-linux/util-linux/pull/3599 Fixes: https://github.com/util-linux/util-linux/issues/3481 Signed-off-by: Karel Zak term-utils/script.1.adoc | 4 ++-- term-utils/script.c | 47 +++++++++++++++++++++++++++++++++++++++++------ 2 files changed, 43 insertions(+), 8 deletions(-) commit bc90a54995d5d0074cf03e01f5030219efa74f4f Author: cgoesche Date: Fri Jun 13 01:59:28 2025 -0400 more: Add MORE_SHELL_LINES environmental variable This provides an alternative way to set the number of lines per screenful, with the same effect as the '-n' and '--lines' command line options. [kzak@redhat.com: - use ul_strtou16()] Addresses: #3476 Signed-off-by: Christian Goeschel Ndjomouo Signed-off-by: Karel Zak text-utils/more.1.adoc | 7 +++++-- text-utils/more.c | 5 ++++- 2 files changed, 9 insertions(+), 3 deletions(-) commit b82e008d1883225931f1c34059eb7587d2f61b6e Author: Karel Zak Date: Tue Jun 24 11:29:22 2025 +0200 include/strutils: add ul_strtou16() Signed-off-by: Karel Zak include/strutils.h | 2 ++ lib/strutils.c | 13 +++++++++++++ 2 files changed, 15 insertions(+) commit 5405c3e09057db82ed397e61443effa9614dbc4a Author: Karel Zak Date: Tue Jun 24 11:14:29 2025 +0200 ldattach: add ifndef BOTHER Signed-off-by: Karel Zak sys-utils/ldattach.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit 6cd6e81cdae575ec5313900dc33b12436a37def0 Merge: 1fef9257c e7a2d6243 Author: Karel Zak Date: Tue Jun 24 11:08:36 2025 +0200 Merge branch 'PR/chrt-optional-prio' of https://github.com/karelzak/util-linux-work * 'PR/chrt-optional-prio' of https://github.com/karelzak/util-linux-work: chrt: Make priority optional for policies that don't use it chrt: Only display current settings when no policy is specified chrt: Make minor cleanups in chrt commit 1fef9257c38a8e29ee02d39d9f4689b38528295d Author: Yuri Chornoivan Date: Tue Jun 24 10:22:17 2025 +0200 po: update uk.po (from translationproject.org) po/uk.po | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) commit a5e14ed8377f5407246fb2998e56414ca487f907 Author: Мирослав Николић Date: Tue Jun 24 10:22:17 2025 +0200 po: update sr.po (from translationproject.org) po/sr.po | 3198 +++++++++++++++++++++++++++----------------------------------- 1 file changed, 1393 insertions(+), 1805 deletions(-) commit 33a7bd17207c4a290693fe43ed065dffe89fc25e Author: Remus-Gabriel Chelu Date: Tue Jun 24 10:22:16 2025 +0200 po: update ro.po (from translationproject.org) po/ro.po | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit d737a4fd4bb1c6da5d82422bc1a2209eba7f5315 Author: Pedro Albuquerque Date: Tue Jun 24 10:22:16 2025 +0200 po: update pt.po (from translationproject.org) po/pt.po | 4497 ++++++++++++++++++++++---------------------------------------- 1 file changed, 1587 insertions(+), 2910 deletions(-) commit 798e0f7e78b92a20de0cb64a8db09ee3dba5f017 Author: Jakub Bogusz Date: Tue Jun 24 10:22:16 2025 +0200 po: update pl.po (from translationproject.org) po/pl.po | 48 ++++++++++++++++++++++++------------------------ 1 file changed, 24 insertions(+), 24 deletions(-) commit 42f4b9069be007bda6003a709ad1758fa339db3c Author: Benno Schulenberg Date: Tue Jun 24 10:22:16 2025 +0200 po: update nl.po (from translationproject.org) po/nl.po | 2804 +++++++++++++++++++------------------------------------------- 1 file changed, 857 insertions(+), 1947 deletions(-) commit 56a1231b2780cb2393b72faae2a8316e856f2699 Author: YOSHIDA Hideki Date: Tue Jun 24 10:22:16 2025 +0200 po: update ja.po (from translationproject.org) po/ja.po | 1921 +++++++++++++++++++++++++------------------------------------- 1 file changed, 757 insertions(+), 1164 deletions(-) commit f285ba442639329b616b23e66c7bde4a71d19a90 Author: Božidar Putanec Date: Tue Jun 24 10:22:16 2025 +0200 po: update hr.po (from translationproject.org) po/hr.po | 238 +++++++++++++++++++++++++++++---------------------------------- 1 file changed, 110 insertions(+), 128 deletions(-) commit 145f49c2ca6c110ec47f7af4d1eabc01e7d29e67 Author: Frédéric Marchal Date: Tue Jun 24 10:22:16 2025 +0200 po: update fr.po (from translationproject.org) po/fr.po | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) commit 874ee309ce1455af065a86f4e4d36ca31f97c2b9 Author: Antonio Ceballos Roa Date: Tue Jun 24 10:22:16 2025 +0200 po: update es.po (from translationproject.org) po/es.po | 12741 ++++++++++++++++++++++++++----------------------------------- 1 file changed, 5519 insertions(+), 7222 deletions(-) commit eddc5bf1b5e1f7dbe12a294fe0d647f18c6c9a56 Author: Mario Blättermann Date: Tue Jun 24 10:22:16 2025 +0200 po: update de.po (from translationproject.org) po/de.po | 836 ++++++++++++++++++++++++++++++--------------------------------- 1 file changed, 402 insertions(+), 434 deletions(-) commit c175f85159c5df31999c319a7592b9587454ebd7 Author: Petr Písař Date: Tue Jun 24 10:22:16 2025 +0200 po: update cs.po (from translationproject.org) po/cs.po | 1942 +++++++++++++++++++++++++------------------------------------- 1 file changed, 787 insertions(+), 1155 deletions(-) commit 67fbd155feeab4d7d64f11943ba6914d4f224e78 Author: Karel Zak Date: Tue Jun 24 10:22:14 2025 +0200 po-man: merge changes po-man/cs.po | 16184 +++++++-------- po-man/de.po | 46139 +++++++++++++++++++++++++++++------------- po-man/es.po | 16096 +++++++-------- po-man/fr.po | 16706 ++++++++-------- po-man/ko.po | 16186 +++++++-------- po-man/pl.po | 17022 ++++++++-------- po-man/pt_BR.po | 16136 +++++++-------- po-man/ro.po | 17379 ++++++++-------- po-man/sr.po | 47882 +++++++++++++++++++++++++++++++------------- po-man/uk.po | 17054 ++++++++-------- po-man/util-linux-man.pot | 16199 +++++++-------- 11 files changed, 139079 insertions(+), 103904 deletions(-) commit a6e0b0809a550b07a8d4b5c5be129e3d186eed4d Author: Мирослав Николић Date: Tue Jun 24 10:21:51 2025 +0200 po-man: update sr.po (from translationproject.org) po-man/sr.po | 34944 +++++++++++++-------------------------------------------- 1 file changed, 7707 insertions(+), 27237 deletions(-) commit 5a1e8157f9fc61c5c6b9d782f270f9164c7a34ec Author: Mario Blättermann Date: Tue Jun 24 10:21:51 2025 +0200 po-man: update de.po (from translationproject.org) po-man/de.po | 33111 ++++++++++++--------------------------------------------- 1 file changed, 6772 insertions(+), 26339 deletions(-) commit e7a2d62434c22e8de16dcbbeb7b57b0cdcf4bb9a Author: Madadi Vineeth Reddy Date: Sun Jun 22 01:20:48 2025 +0530 chrt: Make priority optional for policies that don't use it Currently, chrt requires a priority argument even for scheduling policies like SCHED_OTHER and SCHED_BATCH, which ignore it. This change relaxes that requirement. Now, priority is only expected for SCHED_FIFO and SCHED_RR. For other policies, a default value of 0 is set internally and no argument is required on the command line. This simplifies usage when modifying runtime parameters like --sched-runtime for non-realtime tasks. For example, to change the EEVDF tunable base_slice, one currently needs to run: chrt -o -T 1000000 --pid 0 $PID Passing '0' after --pid is not intutive and not required as priority is not applicable to SCHED_OTHER tasks. Now with this patch, one can do: chrt -o -T 1000000 --pid $PID Passing '0' still works ensuring ABI doesn't break. Signed-off-by: Madadi Vineeth Reddy schedutils/chrt.1.adoc | 14 +++++++++----- schedutils/chrt.c | 24 ++++++++++++++++-------- 2 files changed, 25 insertions(+), 13 deletions(-) commit 13346d4d28cd4873e8aad991866e1d1e22861efc Author: Madadi Vineeth Reddy Date: Sun Jun 22 01:20:47 2025 +0530 chrt: Only display current settings when no policy is specified Previously, running "chrt --pid " with no policy options would display the process’s current scheduling attributes, but specifying a policy without a priority (e.g. chrt --rr --pid ) would silently fallback to displaying the same info. This was confusing, since a policy option normally implies an intent to change something. This patch changes the behavior so that chrt --pid continues to show the current settings: chrt --pid 10862 pid 10862's current scheduling policy: SCHED_OTHER pid 10862's current scheduling priority: 0 pid 10862's current runtime parameter: 2800000 If a policy is specified but no priority follows, chrt now errors out: chrt --rr --pid 10862 chrt: policy SCHED_RR requires a priority argument Verbose output (-v) still prints the current settings when a valid policy+priority is provided. Signed-off-by: Madadi Vineeth Reddy schedutils/chrt.c | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) commit c069c10bad4eece7d129886f375d20d547ccf144 Author: Madadi Vineeth Reddy Date: Sun Jun 22 01:20:46 2025 +0530 chrt: Make minor cleanups in chrt Minor changes such as fixing an incorrect comment and aligning the closing brace of an if condition in main() were made, along with making the usage of --pid consistent across files instead of -p, although -p still works, for better readability. No functional change is intended. Signed-off-by: Madadi Vineeth Reddy schedutils/chrt.1.adoc | 10 +++++----- schedutils/chrt.c | 6 +++--- 2 files changed, 8 insertions(+), 8 deletions(-) commit 0aa379f3723c82508c4ed691f98d1647f49ae29b Author: Johannes Schneider Date: Thu Jun 19 20:41:40 2025 +0200 docs: update mount options for 'ntfs3' Cleanout the mount options, and import the options from the upstream documentation found at https://docs.kernel.org/filesystems/ntfs3.html Fixes: 847264af6 docs: update mount type to 'ntfs3' Signed-off-by: Johannes Schneider sys-utils/mount.8.adoc | 47 ++++++++++++++++++++++++++++++++++++----------- 1 file changed, 36 insertions(+), 11 deletions(-) commit c8e5b8a818323af30ec656f079c7feadaeeb13c3 Author: Karel Zak Date: Thu Jun 19 12:23:57 2025 +0200 libmount: don't update utab when moving /run It's bad idea to try update /run/mount/utab when moving any directory in way to the file (like /run). It's also unnecessary to prepare any updates if the utab file is empty. This is already done for umount, and we can use it for mount move as well. Fixes: https://github.com/util-linux/util-linux/issues/3619 Signed-off-by: Karel Zak libmount/src/context.c | 27 +++++++++++++++++++++------ 1 file changed, 21 insertions(+), 6 deletions(-) commit 10f0de325d016d7f0fcdbb07372292bd406fdb96 Author: Karel Zak Date: Thu Jun 19 12:23:27 2025 +0200 include/strutils: Add startswithpath() This is similar to startswith() but checks if the prefix is a complete path or a complete subdirectory (needs to end with '/'). Signed-off-by: Karel Zak include/strutils.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) commit 023c5f499e2c9bbe126a6017ac7797b7579b3398 Merge: 9678fea3f beb3117ee Author: Karel Zak Date: Thu Jun 19 10:45:14 2025 +0200 Merge branch 'ntfs3-type-detection' of https://github.com/js731ca/util-linux * 'ntfs3-type-detection' of https://github.com/js731ca/util-linux: bash-completion: update autocompletion list to 'ntfs3' docs: update mount type to 'ntfs3' tests: update expected type to 'ntfs3' libblkid/libmount: ntfs: return filesystem type 'ntfs3' commit 9678fea3f5e89ea640fc3b98d655d91fbb8c4cd8 Merge: 51c0697e5 c5d5e8873 Author: Karel Zak Date: Mon Jun 16 13:37:50 2025 +0200 Merge branch 'musl-kill-decode' of https://github.com/ChenQi1989/util-linux * 'musl-kill-decode' of https://github.com/ChenQi1989/util-linux: ts/kill/decode: use RTMIN from 'kill -L' instead of hardcoding 34 commit beb3117ee0aec093c738cea5702fb76ab290b289 Author: Johannes Schneider Date: Fri Jun 13 17:46:44 2025 +0200 bash-completion: update autocompletion list to 'ntfs3' Signed-off-by: Johannes Schneider bash-completion/findmnt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 847264af663ed3d22cd798720abb649b68b086e6 Author: Johannes Schneider Date: Fri Jun 13 17:46:11 2025 +0200 docs: update mount type to 'ntfs3' Signed-off-by: Johannes Schneider sys-utils/mount.8.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 85a68f3a3c3126e8840be5322ebecd9f2bce96ac Author: Johannes Schneider Date: Fri Jun 13 17:45:30 2025 +0200 tests: update expected type to 'ntfs3' Signed-off-by: Johannes Schneider tests/expected/blkid/low-probe-ntfs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 4cd429fdcd3e7db1d031494987d5cf7411689d79 Author: Johannes Schneider Date: Fri Jun 13 15:55:31 2025 +0200 libblkid/libmount: ntfs: return filesystem type 'ntfs3' Change the returned filesystem type from 'ntfs' to 'ntfs3', to match what the kernel/fs/ntfs3 driver calls register_filesystem on [1][2]. This same driver also registers itself as 'ntfs', but then runs in a "legacy" mode [3] which forces the mount to stay RO. Link: [1]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/fs/ntfs3/super.c?h=v6.12#n1794 Link: [2]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/fs/ntfs3/super.c?h=v6.12#n1874 Link: [3]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/fs/ntfs3/super.c?h=v6.12#n412 Signed-off-by: Johannes Schneider libblkid/src/superblocks/ntfs.c | 2 +- libmount/src/utils.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 51c0697e5551fe3c2d481a4ac71d81695e5374ba Author: Mingjie Shen Date: Wed Jun 11 17:11:35 2025 -0400 libblkid/src/topology/dm: fix fscanf return value check to match expected number of parsed items libblkid/src/topology/dm.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit c4b3ade6074d0ccb3b58187bef7b60e361bf5bfb Merge: 56f3c5718 84de06882 Author: Karel Zak Date: Mon Jun 9 14:43:13 2025 +0200 Merge branch 'doc-col-set-data-func' of https://github.com/ferdnyc/util-linux * 'doc-col-set-data-func' of https://github.com/ferdnyc/util-linux: Make scols_column_set_data_func docs visible commit 56f3c57181cdb9f46a168666ecf26c3107d7fee7 Merge: 6cf827522 762f295a0 Author: Karel Zak Date: Mon Jun 9 14:42:46 2025 +0200 Merge branch 'PR/Benno-2Jun' of https://github.com/karelzak/util-linux-work * 'PR/Benno-2Jun' of https://github.com/karelzak/util-linux-work: treewide: replace postal address in license specifier with a terse URL docs: stop the copyright verbiage from getting included in the POT file docs: make the "po4a:" line the first line, like in all other .adoc files correct the full name of the GPL in various files remove "Copyright (C) ...." notes from files that claim no copyright remove two leftover license lines from colors.{c,h} commit 6cf827522c8622b9f1e57ad611aaf0fcec37dc83 Merge: 4a6fc2f8c b3a1d92a9 Author: Karel Zak Date: Mon Jun 9 14:40:09 2025 +0200 Merge branch 'fix-mkfds-foreign-sockets' of https://github.com/ChenQi1989/util-linux * 'fix-mkfds-foreign-sockets' of https://github.com/ChenQi1989/util-linux: lsfd/mkfds-foreign-sockets: skip when lacking sock_diag ability commit 84de06882e925b98b9cf7ffae2a37ae55931894d Author: FeRD (Frank Dana) Date: Mon Jun 9 04:55:00 2025 -0400 Make scols_column_set_data_func docs visible The documentation comment for scols_column_set_data_func was missing the second asterisk in its opening marker, causing the contents to be omitted from the rendered documentation. Signed-off-by: FeRD (Frank Dana) libsmartcols/src/column.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit c5d5e8873029d170fcab38a6fbd5d5a355574b9f Author: Chen Qi Date: Wed Jun 4 16:27:19 2025 +0800 ts/kill/decode: use RTMIN from 'kill -L' instead of hardcoding 34 glibc uses 34 as the value of SIGRTMIN: https://sourceware.org/git/?p=glibc.git;a=blob;f=signal/allocrtsig.c;h=8ed8e37dd6c41f94be6eef042ce9db1af1153228;hb=HEAD#l27 """ static int current_rtmin = __SIGRTMIN + RESERVED_SIGRT; """ musl uses 35 as the value of SIGRTMIN: https://git.musl-libc.org/cgit/musl/tree/src/signal/sigrtmin.c With the hardcoded 34, test case fails with the following difference: -Ignored: HUP QUIT TRAP PIPE ALRM +Ignored: HUP QUIT TRAP PIPE ALRM 34 Extract the value of RTMIN from 'kill -L' to avoid such hardcoding. Signed-off-by: Chen Qi tests/ts/kill/decode | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) commit 4a6fc2f8c31cde5d36cf5ade2c68e5f558b09280 Merge: 123abb9eb 35fc13767 Author: Karel Zak Date: Fri Jun 6 11:37:27 2025 +0200 Merge branch 'nsenter-man' of https://github.com/mjoerg/util-linux * 'nsenter-man' of https://github.com/mjoerg/util-linux: nsenter: (man) improve descriptions for some options commit 123abb9eb4c6b21706b48fe234900a82d53f6ae2 Merge: 221c3d78d 98f4e4833 Author: Karel Zak Date: Fri Jun 6 11:36:49 2025 +0200 Merge branch 'lsclocks/doc' of https://github.com/t-8ch/util-linux * 'lsclocks/doc' of https://github.com/t-8ch/util-linux: lsclocks: (man) list supported clock types commit 221c3d78deeea441b78a92a9570caaf6cfe07676 Merge: 351288880 07df800a8 Author: Karel Zak Date: Fri Jun 6 11:36:14 2025 +0200 Merge branch 'bash-completion-command-lsblk' of https://github.com/akinomyoga/util-linux * 'bash-completion-command-lsblk' of https://github.com/akinomyoga/util-linux: bash-completion: use "command ls" instead of "\ls" bash-completion: prefix "command" to other external commands bash-completion: prefer "builtin cd" to "cd" to avoid aliases bash-completion: prefer "command lsblk" to "lsblk" to avoid aliases commit 762f295a0222a2ac25243d9dd0d7abeebba7f7d7 Author: Benno Schulenberg Date: Mon Jun 2 16:14:36 2025 +0200 treewide: replace postal address in license specifier with a terse URL This brings the license specifier into the internet age. Signed-off-by: Benno Schulenberg disk-utils/fsck.cramfs.c | 5 ++--- disk-utils/mkfs.cramfs.c | 5 ++--- include/caputils.h | 5 ++--- include/plymouth-ctrl.h | 4 +--- lib/caputils.c | 5 ++--- lib/exec_shell.c | 5 ++--- lib/plymouth-ctrl.c | 4 +--- libblkid/src/blkid.h.in | 5 ++--- libfdisk/src/libfdisk.h.in | 5 ++--- libmount/python/context.c | 5 ++--- libmount/python/fs.c | 5 ++--- libmount/python/pylibmount.c | 5 ++--- libmount/python/tab.c | 5 ++--- libmount/src/libmount.h.in | 5 ++--- login-utils/last.1.adoc | 3 +-- login-utils/last.c | 3 +-- login-utils/lslogins.c | 5 ++--- login-utils/su-common.c | 8 ++++---- login-utils/sulogin-consoles.c | 4 +--- login-utils/sulogin-consoles.h | 4 +--- login-utils/sulogin.8.adoc | 3 +-- login-utils/sulogin.c | 3 +-- login-utils/utmpdump.1.adoc | 3 +-- login-utils/utmpdump.c | 3 +-- misc-utils/enosys.c | 5 ++--- misc-utils/fadvise.c | 5 ++--- misc-utils/fincore.c | 5 ++--- misc-utils/findmnt.c | 5 ++--- misc-utils/getopt.c | 5 ++--- misc-utils/lsblk.c | 5 ++--- misc-utils/lsclocks.c | 5 ++--- misc-utils/pipesz.c | 5 ++--- misc-utils/waitpid.c | 5 ++--- misc-utils/wipefs.c | 5 ++--- schedutils/chrt.1.adoc | 5 ++--- schedutils/chrt.c | 5 ++--- schedutils/sched_attr.h | 5 ++--- schedutils/taskset.1.adoc | 5 ++--- schedutils/taskset.c | 5 ++--- schedutils/uclampset.1.adoc | 5 ++--- schedutils/uclampset.c | 5 ++--- sys-utils/chcpu.c | 5 ++--- sys-utils/chmem.c | 5 ++--- sys-utils/choom.c | 5 ++--- sys-utils/fallocate.c | 5 ++--- sys-utils/ipcmk.c | 5 ++--- sys-utils/lsipc.c | 5 ++--- sys-utils/mount.8.adoc | 5 ++--- sys-utils/setpriv.c | 5 ++--- sys-utils/umount.8.adoc | 5 ++--- sys-utils/umount.c | 5 ++--- sys-utils/unshare.c | 5 ++--- sys-utils/wdctl.c | 5 ++--- sys-utils/zramctl.c | 5 ++--- tests/helpers/test_enosys.c | 5 ++--- tests/helpers/test_mkfds.c | 5 ++--- tests/helpers/test_mkfds.h | 5 ++--- tests/helpers/test_mkfds_ppoll.c | 5 ++--- 58 files changed, 108 insertions(+), 169 deletions(-) commit 67b1b808910644582b16919d4e6dde8b458bcddb Author: Benno Schulenberg Date: Mon Jun 2 16:14:35 2025 +0200 docs: stop the copyright verbiage from getting included in the POT file For some reason the asciidoc parser from `po4a` includes *all* comments from an adoc file into the util-linux-man.pot file. Xgettext had a way to include only certain comments, but `po4a` does not appear to have a dedicated mechanism for this. So... use some bricolage: insert a fruitless 'ifdef' as a barrier between the copyright/license comment and the title line. This prevents `po4a` from seeing the two things as belonging together. This shrinks the util-linux-man.pot file by 1267 lines (2.5%), equivalent to nearly 67kB (4.8%). Signed-off-by: Benno Schulenberg disk-utils/addpart.8.adoc | 2 ++ disk-utils/blockdev.8.adoc | 2 ++ disk-utils/cfdisk.8.adoc | 2 ++ disk-utils/delpart.8.adoc | 2 ++ disk-utils/fdformat.8.adoc | 2 ++ disk-utils/fdisk.8.adoc | 2 ++ disk-utils/fsck.8.adoc | 2 ++ disk-utils/fsck.minix.8.adoc | 2 ++ disk-utils/mkfs.bfs.8.adoc | 2 ++ disk-utils/mkfs.minix.8.adoc | 2 ++ disk-utils/mkswap.8.adoc | 2 ++ disk-utils/partx.8.adoc | 2 ++ disk-utils/resizepart.8.adoc | 2 ++ disk-utils/sfdisk.8.adoc | 2 ++ disk-utils/swaplabel.8.adoc | 2 ++ lib/terminal-colors.d.5.adoc | 1 + libblkid/libblkid.3.adoc | 2 ++ libsmartcols/scols-filter.5.adoc | 2 ++ libuuid/man/uuid.3.adoc | 2 ++ libuuid/man/uuid_clear.3.adoc | 2 ++ libuuid/man/uuid_compare.3.adoc | 2 ++ libuuid/man/uuid_copy.3.adoc | 2 ++ libuuid/man/uuid_generate.3.adoc | 2 ++ libuuid/man/uuid_is_null.3.adoc | 2 ++ libuuid/man/uuid_parse.3.adoc | 2 ++ libuuid/man/uuid_time.3.adoc | 2 ++ libuuid/man/uuid_unparse.3.adoc | 2 ++ login-utils/chfn.1.adoc | 2 ++ login-utils/chsh.1.adoc | 2 ++ login-utils/last.1.adoc | 2 ++ login-utils/login.1.adoc | 2 ++ login-utils/lslogins.1.adoc | 2 ++ login-utils/newgrp.1.adoc | 2 ++ login-utils/sulogin.8.adoc | 2 ++ login-utils/utmpdump.1.adoc | 2 ++ login-utils/vipw.8.adoc | 2 ++ lsfd-cmd/lsfd.1.adoc | 2 ++ misc-utils/blkid.8.adoc | 2 ++ misc-utils/cal.1.adoc | 2 ++ misc-utils/fincore.1.adoc | 2 ++ misc-utils/findfs.8.adoc | 2 ++ misc-utils/hardlink.1.adoc | 2 ++ misc-utils/kill.1.adoc | 2 ++ misc-utils/lastlog2.8.adoc | 2 ++ misc-utils/logger.1.adoc | 2 ++ misc-utils/look.1.adoc | 2 ++ misc-utils/lslocks.8.adoc | 2 ++ misc-utils/mcookie.1.adoc | 2 ++ misc-utils/rename.1.adoc | 2 ++ misc-utils/uuidd.8.adoc | 2 ++ misc-utils/uuidgen.1.adoc | 2 ++ misc-utils/uuidparse.1.adoc | 2 ++ misc-utils/whereis.1.adoc | 2 ++ misc-utils/wipefs.8.adoc | 2 ++ schedutils/chrt.1.adoc | 2 ++ schedutils/coresched.1.adoc | 4 +--- schedutils/taskset.1.adoc | 2 ++ schedutils/uclampset.1.adoc | 2 ++ sys-utils/ctrlaltdel.8.adoc | 2 ++ sys-utils/dmesg.1.adoc | 2 ++ sys-utils/eject.1.adoc | 2 ++ sys-utils/flock.1.adoc | 2 ++ sys-utils/fstab.5.adoc | 2 ++ sys-utils/hwclock.8.adoc | 2 ++ sys-utils/ipcmk.1.adoc | 2 ++ sys-utils/ipcrm.1.adoc | 2 ++ sys-utils/ipcs.1.adoc | 2 ++ sys-utils/ldattach.8.adoc | 2 ++ sys-utils/lsns.8.adoc | 2 ++ sys-utils/mount.8.adoc | 2 ++ sys-utils/prlimit.1.adoc | 2 ++ sys-utils/renice.1.adoc | 2 ++ sys-utils/setpgid.1.adoc | 2 ++ sys-utils/setsid.1.adoc | 2 ++ sys-utils/umount.8.adoc | 2 ++ term-utils/mesg.1.adoc | 2 ++ term-utils/script.1.adoc | 2 ++ term-utils/setterm.1.adoc | 2 ++ term-utils/wall.1.adoc | 2 ++ term-utils/write.1.adoc | 2 ++ text-utils/bits.1.adoc | 2 ++ text-utils/col.1.adoc | 2 ++ text-utils/colcrt.1.adoc | 2 ++ text-utils/colrm.1.adoc | 2 ++ text-utils/column.1.adoc | 2 ++ text-utils/hexdump.1.adoc | 2 ++ text-utils/line.1.adoc | 2 ++ text-utils/more.1.adoc | 2 ++ text-utils/pg.1.adoc | 2 ++ text-utils/rev.1.adoc | 2 ++ text-utils/ul.1.adoc | 2 ++ 91 files changed, 180 insertions(+), 3 deletions(-) commit 9a4c6bdf345c1af8359bb8575ea5c6226873ca36 Author: Benno Schulenberg Date: Mon Jun 2 16:14:34 2025 +0200 docs: make the "po4a:" line the first line, like in all other .adoc files Also, there should be no space before "po4a:" for the line to be valid. Signed-off-by: Benno Schulenberg login-utils/newgrp.1.adoc | 2 +- misc-utils/rename.1.adoc | 2 +- sys-utils/setpgid.1.adoc | 2 +- text-utils/line.1.adoc | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) commit c4b2b66bad23e605dd6392921d0750770145e4a1 Author: Benno Schulenberg Date: Mon Jun 2 16:14:33 2025 +0200 correct the full name of the GPL in various files Last year, commit f4cb44bd11 corrected the full name of the GPL in a dozen files, but still left the mistaken name in eight places. (Also, in the first file, just reshuffle the license line, to be in the same position as in other files.) Signed-off-by: Benno Schulenberg disk-utils/swaplabel.c | 7 +++---- include/ismounted.h | 4 ++-- include/pager.h | 3 ++- lib/ismounted.c | 4 ++-- lib/pager.c | 4 ++-- misc-utils/findfs.c | 4 ++-- misc-utils/uuidd.c | 4 ++-- misc-utils/uuidgen.c | 4 ++-- sys-utils/eject.1.adoc | 2 +- 9 files changed, 18 insertions(+), 18 deletions(-) commit 44da1cb11db3db73898918969a5c33f825458278 Author: Benno Schulenberg Date: Mon Jun 2 16:14:32 2025 +0200 remove "Copyright (C) ...." notes from files that claim no copyright Replace them with a "Written by" or "Authors:" label. Signed-off-by: Benno Schulenberg include/color-names.h | 2 +- include/procfs.h | 2 +- include/sysfs.h | 2 +- lib/color-names.c | 2 +- lib/langinfo.c | 8 ++++---- lib/mangle.c | 2 +- lib/path.c | 2 +- lib/procfs.c | 2 +- lib/strutils.c | 6 +++--- lib/sysfs.c | 2 +- 10 files changed, 15 insertions(+), 15 deletions(-) commit ca7b55217d3100ee2a1a7874fd643726bb2df04f Author: Benno Schulenberg Date: Mon Jun 2 16:14:31 2025 +0200 remove two leftover license lines from colors.{c,h} Last March, commit 549a517857 replaced the SPDX line in three files with a "No copyright is claimed" phrase, but forgot to remove from two of those files the text lines that correspond to the SPDX. Signed-off-by: Benno Schulenberg include/colors.h | 3 --- lib/colors.c | 3 --- 2 files changed, 6 deletions(-) commit 35fc1376774dab61e5881dfe1dd6bb25d019c080 Author: Martin Joerg Date: Thu Jun 5 11:13:55 2025 +0000 nsenter: (man) improve descriptions for some options Signed-off-by: Martin Joerg sys-utils/nsenter.1.adoc | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) commit 98f4e4833c556291324376a7d55ad0280f4111f2 Author: Thomas Weißschuh Date: Tue Jun 3 18:05:30 2025 +0200 lsclocks: (man) list supported clock types Document the different types of clocks that are supported by lsclocks(1). Signed-off-by: Thomas Weißschuh misc-utils/lsclocks.1.adoc | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) commit 07df800a88635084476c242354736fd4c1f695d6 Author: Koichi Murase Date: Tue Jun 3 22:08:04 2025 +0900 bash-completion: use "command ls" instead of "\ls" The backslash quoting can be used to bypass aliases, but it cannot be used to bypass shell functions for interactive uses defined by the users. We can use "command ls" instead to bypass both aliases and shell functions. bash-completion/blkid | 2 +- bash-completion/mount | 2 +- bash-completion/umount | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) commit 356dd5464b19962af51542a64e5f7c08aa937e96 Author: Koichi Murase Date: Tue Jun 3 21:50:22 2025 +0900 bash-completion: prefix "command" to other external commands bash-completion/blkid | 4 ++-- bash-completion/chcpu | 4 ++-- bash-completion/coresched | 2 +- bash-completion/delpart | 2 +- bash-completion/eject | 4 ++-- bash-completion/findmnt | 2 +- bash-completion/fsfreeze | 2 +- bash-completion/fstrim | 2 +- bash-completion/ionice | 4 ++-- bash-completion/ipcrm | 18 +++++++++--------- bash-completion/logger | 4 ++-- bash-completion/look | 2 +- bash-completion/losetup | 4 ++-- bash-completion/lslocks | 2 +- bash-completion/lslogins | 4 ++-- bash-completion/mkswap | 2 +- bash-completion/mount | 6 +++--- bash-completion/partx | 2 +- bash-completion/renice | 2 +- bash-completion/resizepart | 2 +- bash-completion/rfkill | 2 +- bash-completion/rtcwake | 2 +- bash-completion/setpriv | 8 ++++---- bash-completion/su | 2 +- bash-completion/swaplabel | 2 +- bash-completion/swapoff | 6 +++--- bash-completion/swapon | 10 +++++----- bash-completion/taskset | 2 +- bash-completion/umount | 8 ++++---- bash-completion/wipefs | 2 +- bash-completion/write | 4 ++-- 31 files changed, 61 insertions(+), 61 deletions(-) commit 1b356525c6824ec573b4fd3cf2a65585102cc641 Author: Koichi Murase Date: Tue Jun 3 19:29:06 2025 +0900 bash-completion: prefer "builtin cd" to "cd" to avoid aliases The command "cd" is also often aliased, so we should use "builtin cd" to make sure to use the built-in version of "cd". bash-completion/blkid | 4 ++-- bash-completion/choom | 2 +- bash-completion/chrt | 2 +- bash-completion/coresched | 2 +- bash-completion/lsns | 2 +- bash-completion/nsenter | 2 +- bash-completion/prlimit | 2 +- bash-completion/renice | 2 +- bash-completion/rtcwake | 2 +- bash-completion/setarch | 2 +- bash-completion/taskset | 2 +- bash-completion/uclampset | 2 +- 12 files changed, 13 insertions(+), 13 deletions(-) commit 35128888075ade600413092214b62acf3601ead9 Merge: 55d92ad45 36965bbfb Author: Karel Zak Date: Mon Jun 2 14:03:55 2025 +0200 Merge branch 'cachestat' of https://github.com/teknoraver/util-linux * 'cachestat' of https://github.com/teknoraver/util-linux: add option to force cachestat() usage commit 55d92ad4511d982dd0ef754a6aea2e665a616bad Merge: f544f59b7 46608e3d7 Author: Karel Zak Date: Mon Jun 2 14:03:32 2025 +0200 Merge branch 'PR/Benno-28May' of https://github.com/karelzak/util-linux-work * 'PR/Benno-28May' of https://github.com/karelzak/util-linux-work: textual: harmonize the wording of the error message for an invalid PID colrm: make two error messages actually say that something is wrong lib/strutils: call gettext() only when argument of --hyperlink is invalid lib/colors: call gettext() only when the argument of --color is invalid commit f544f59b7d2dcc3bb2ad8fcdf38bd6e815ec7068 Merge: a9a298ca7 3185ca414 Author: Karel Zak Date: Mon Jun 2 13:50:00 2025 +0200 Merge branch 'existing' of https://github.com/teknoraver/util-linux * 'existing' of https://github.com/teknoraver/util-linux: fix typo: exciting -> existing commit b28c88d5d2e2432f677a945c931ea58283d808fd Author: Koichi Murase Date: Mon Jun 2 05:14:52 2025 +0900 bash-completion: prefer "command lsblk" to "lsblk" to avoid aliases The user may define an alias lsblk to specify the default formatting, such as -T, which would conflict with lsblk -r used in the Bash completion settings. In the Bash completion settings, to prevent the calls of lsblk -r ... from being replaced with lsblk -T -r ... and failing, lsblk should be called using command lsblk. bash-completion/addpart | 2 +- bash-completion/blkdiscard | 2 +- bash-completion/blkid | 2 +- bash-completion/blkzone | 2 +- bash-completion/blockdev | 2 +- bash-completion/cfdisk | 2 +- bash-completion/delpart | 2 +- bash-completion/fdisk | 4 ++-- bash-completion/findfs | 8 ++++---- bash-completion/fsck | 2 +- bash-completion/fsck.cramfs | 2 +- bash-completion/fsck.minix | 2 +- bash-completion/mkfs | 2 +- bash-completion/mkfs.bfs | 2 +- bash-completion/mkfs.cramfs | 2 +- bash-completion/mkfs.minix | 2 +- bash-completion/mkswap | 2 +- bash-completion/mount | 4 ++-- bash-completion/partx | 2 +- bash-completion/resizepart | 2 +- bash-completion/sfdisk | 4 ++-- bash-completion/swapon | 10 +++++----- bash-completion/wipefs | 2 +- 23 files changed, 33 insertions(+), 33 deletions(-) commit a9a298ca7e3bfff568b1d0e4958bd0aa47b8459a Author: Auke Kok Date: Tue May 27 12:34:43 2025 -0700 libblkid: Add scoutfs filesystem. The scoutfs filesystem is maintained out-of-tree, but current enough that we want to submit it for inclusion in libblkid - there's a few users out there that would benefit from being able to have lsblk aid in diagnosing and identifying. For more information about scoutfs, visit the github page here: https://github.com/versity/scoutfs Test images are provided for both data and meta devices. These were taken from validation samples. The wiper is set to only wipe a minute part of the filesystem - basically only the superblock. This is adequately destructive. Signed-off-by: Auke Kok libblkid/meson.build | 1 + libblkid/src/Makemodule.am | 1 + libblkid/src/superblocks/scoutfs.c | 123 +++++++++++++++++++++++++++ libblkid/src/superblocks/superblocks.c | 2 + libblkid/src/superblocks/superblocks.h | 2 + tests/expected/blkid/low-probe-scoutfs_data | 8 ++ tests/expected/blkid/low-probe-scoutfs_meta | 8 ++ tests/ts/blkid/images-fs/scoutfs_data.img.xz | Bin 0 -> 584 bytes tests/ts/blkid/images-fs/scoutfs_meta.img.xz | Bin 0 -> 580 bytes 9 files changed, 145 insertions(+) commit 3185ca414a46fc718fa363f7e9a8d45a650aa243 Author: Matteo Croce Date: Fri May 23 05:42:53 2025 +0200 fix typo: exciting -> existing tests/expected/fincore/count.16384 | 2 +- tests/expected/fincore/count.4096 | 2 +- tests/expected/fincore/count.65536 | 2 +- tests/expected/fincore/count.err | 2 +- tests/expected/fincore/count.nosize | 2 +- tests/ts/fincore/count | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) commit 36965bbfb36328e80e3511a11b85b63e8a41d998 Author: Matteo Croce Date: Fri May 23 03:59:36 2025 +0200 add option to force cachestat() usage When cachestat() is not available, mmap() and fincore() are used to get cache statistics. This fallback returns less data than cachestat, and potentially hides read errors by reporting that the file is all mapped in memory: $ fincore /usr/bin/java fincore: failed to do cachestat: /usr/bin/java: Operation not permitted RES PAGES SIZE FILE 208K 13 198,1K /usr/bin/java $ echo $? 0 $ sudo fincore /usr/bin/java RES PAGES SIZE FILE 0B 0 198,1K /usr/bin/java Add a --cachestat argument which forces cachestat usage and fails if it's not available: $ fincore -C /usr/bin/java fincore: failed to do cachestat: /usr/bin/java: Operation not permitted $ echo $? 1 Also, on huge files the fallback is very slow and memory consuming, so this flag can be user to avoid doing it by mistake. bash-completion/fincore | 1 + misc-utils/fincore.1.adoc | 6 ++++++ misc-utils/fincore.c | 18 +++++++++++++++--- 3 files changed, 22 insertions(+), 3 deletions(-) commit e4071d496fdbd8b2f1ae8d44a19888f8bbd60f5e Merge: 27dd83b94 9a36d7701 Author: Karel Zak Date: Thu May 29 13:26:40 2025 +0200 Merge branch 'patch-1' of https://github.com/Zephkek/util-linux * 'patch-1' of https://github.com/Zephkek/util-linux: Update bufflen Update setpwnam.c commit 46608e3d7e8ca309589d0321bf911e19c7d26dd3 Author: Benno Schulenberg Date: Wed May 28 11:37:04 2025 +0200 textual: harmonize the wording of the error message for an invalid PID Having four different forms for the same basic message is unneeded. Signed-off-by: Benno Schulenberg misc-utils/kill.c | 4 ++-- misc-utils/lsclocks.c | 2 +- misc-utils/lslocks.c | 2 +- misc-utils/waitpid.c | 2 +- schedutils/coresched.c | 5 ++--- schedutils/taskset.c | 3 +-- sys-utils/setpriv.c | 2 +- 7 files changed, 9 insertions(+), 11 deletions(-) commit 078b3fb834d77af566be4c636058d9104cb94a4a Author: Benno Schulenberg Date: Wed May 28 11:37:03 2025 +0200 colrm: make two error messages actually say that something is wrong Signed-off-by: Benno Schulenberg text-utils/colrm.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 8a2c604c1b95e344aec9a9c766c31877674d2085 Author: Benno Schulenberg Date: Wed May 28 11:37:02 2025 +0200 lib/strutils: call gettext() only when argument of --hyperlink is invalid Signed-off-by: Benno Schulenberg include/strutils.h | 2 +- lib/strutils.c | 4 ++-- lsfd-cmd/lsfd.c | 3 +-- misc-utils/findmnt.c | 3 +-- misc-utils/lsblk.c | 3 +-- 5 files changed, 6 insertions(+), 9 deletions(-) commit 42b60bce24536266869e512e43ad5be460dad399 Author: Benno Schulenberg Date: Wed May 28 11:37:01 2025 +0200 lib/colors: call gettext() only when the argument of --color is invalid Instead of calling gettext() before starting to interpret the argument of option -L/--color, call it only when it's needed: when the argument is not recognized. Signed-off-by: Benno Schulenberg disk-utils/cfdisk.c | 3 +-- disk-utils/fdisk.c | 3 +-- disk-utils/sfdisk.c | 3 +-- include/colors.h | 2 +- lib/colors.c | 7 ++++--- misc-utils/cal.c | 3 +-- sys-utils/dmesg.c | 3 +-- text-utils/hexdump.c | 3 +-- 8 files changed, 11 insertions(+), 16 deletions(-) commit 27dd83b942c949fa123bd8cc00c8fd054666dc2c Merge: ef878cb4f 18c7a2a82 Author: Karel Zak Date: Thu May 29 12:02:53 2025 +0200 Merge branch 'PR/Benno-23May' of https://github.com/karelzak/util-linux-work * 'PR/Benno-23May' of https://github.com/karelzak/util-linux-work: hardlink: (man,usage) sort the options mostly alphabetically hardlink: (usage) improve the descriptions of three options hardlink: (usage) remove mistaken period from two option descriptions hexdump: (man) put a list item on a single line, to avoid a warning commit ef878cb4f1813ec0e9079af01c98836ddc9b2c21 Merge: a2b7768bf eb3003a7d Author: Karel Zak Date: Thu May 29 12:02:29 2025 +0200 Merge branch 'PR/libmount-verity-deinit' of https://github.com/karelzak/util-linux-work * 'PR/libmount-verity-deinit' of https://github.com/karelzak/util-linux-work: libmount: (verity) use messages API for important errors libmount: (verity) use messages API for dlopen errors libmount: (verity) fix compiler warning libmount: (verity) fix deinitialization commit a2b7768bf25a29824dd0c7fdd31464a042dce0a5 Merge: 49a7b29e9 b77b8172d Author: Karel Zak Date: Thu May 29 12:02:09 2025 +0200 Merge branch 'total' of https://github.com/teknoraver/util-linux * 'total' of https://github.com/teknoraver/util-linux: fincore: add option to show a grand total commit 18c7a2a82177dd8aa247a7bad4032e86af69b3a8 Author: Benno Schulenberg Date: Fri May 23 14:04:07 2025 +0200 hardlink: (man,usage) sort the options mostly alphabetically Also, improve some markup and wording and grammar. Signed-off-by: Benno Schulenberg misc-utils/hardlink.1.adoc | 55 +++++++++++++++++++++++----------------------- misc-utils/hardlink.c | 22 +++++++++---------- 2 files changed, 39 insertions(+), 38 deletions(-) commit e64d16302f634e028da0e61ee6e4b0217ad05762 Author: Benno Schulenberg Date: Fri May 23 14:04:06 2025 +0200 hardlink: (usage) improve the descriptions of three options The first description was too wordy for a --help text, the second was vague and seemed to imply that it should be combined with the preceding option, and the third failed to mention that it doesn't actually link anything. (Note: the choice for -m for --maximize and -M for --minimize is unfortunate, as most people would guess the opposite, especially since -s is used for --minimum-size and -S for --maximum-size.) Signed-off-by: Benno Schulenberg misc-utils/hardlink.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) commit 1fa2d158491c67dde5fff3d877339fdd512e9422 Author: Benno Schulenberg Date: Fri May 23 14:04:05 2025 +0200 hardlink: (usage) remove mistaken period from two option descriptions Signed-off-by: Benno Schulenberg misc-utils/hardlink.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 0dbbd62ea081e98386fa5a7bafd2bf9ac4df0a14 Author: Benno Schulenberg Date: Fri May 23 14:04:04 2025 +0200 hexdump: (man) put a list item on a single line, to avoid a warning Asciidoctor annoyingly warned for every translation that unindented content was added to a list item. Avoid this by not breaking the list item into two lines. Signed-off-by: Benno Schulenberg text-utils/hexdump.1.adoc | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) commit 49a7b29e9f727dde4e8601f4d2ca2fbc4846258f Author: zhenwei pi Date: Mon May 26 17:37:57 2025 +0800 AUTHORS: update Zhenwei Pi email I will be leaving ByteDance so updating my email in AUTHORS to my personal email. Signed-off-by: zhenwei pi AUTHORS | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit eb3003a7dbee376c264ccf0b58e3c25617fd8707 Author: Karel Zak Date: Mon May 26 18:55:36 2025 +0200 libmount: (verity) use messages API for important errors Signed-off-by: Karel Zak libmount/src/hook_veritydev.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) commit e4f6d45a30f917d50c4176fa593ee82dddf267c5 Author: Karel Zak Date: Mon May 26 18:44:08 2025 +0200 libmount: (verity) use messages API for dlopen errors Signed-off-by: Karel Zak libmount/src/hook_veritydev.c | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) commit f2e721457ddd8a3b974c3c19a0c0c3cfa0e8a9ec Author: Karel Zak Date: Mon May 26 17:58:48 2025 +0200 libmount: (verity) fix compiler warning libmount/src/hook_veritydev.c: In function 'setup_veritydev': libmount/src/hook_veritydev.c:457:13: warning: '%s' directive argument is null [-Wformat-overflow=] Signed-off-by: Karel Zak libmount/src/hook_veritydev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 09a306d6528581a4f3ecbeedf315108f99c872c3 Author: Karel Zak Date: Mon May 26 17:57:34 2025 +0200 libmount: (verity) fix deinitialization Fixes: https://github.com/util-linux/util-linux/issues/3592 Signed-off-by: Karel Zak libmount/src/hook_veritydev.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) commit 6cd8d3e71054ee288dbeee424097e481bef7c146 Merge: 31f13c351 b35e30e5e Author: Karel Zak Date: Mon May 26 11:58:31 2025 +0200 Merge branch 'master' of https://github.com/formtapez/util-linux * 'master' of https://github.com/formtapez/util-linux: fix sectors typos commit 31f13c351a91616d3cb905f39e22f8066cf4c0b0 Merge: 7f84c9ad3 23a7e0865 Author: Karel Zak Date: Mon May 26 11:32:49 2025 +0200 Merge branch 'PR/lsblk-pttype' of https://github.com/karelzak/util-linux-work * 'PR/lsblk-pttype' of https://github.com/karelzak/util-linux-work: lsblk: use ID_PART_ENTRY_SCHEME as fallback for PTTYPE commit 7f84c9ad3265700ab9ab0dfb7549fb2a3bb189d8 Merge: c6059d72a 78914c805 Author: Karel Zak Date: Mon May 26 11:32:25 2025 +0200 Merge branch 'PR/AT_SECURE' of https://github.com/karelzak/util-linux-work * 'PR/AT_SECURE' of https://github.com/karelzak/util-linux-work: treewide: improve getauxval(AT_SECURE) usage lib/env, ...: use getauxval(AT_SECURE) for SUID check commit 9a36d77012c4c771f8d51eba46b6e62c29bf572a Author: Mohamed Maatallah Date: Mon May 26 10:06:02 2025 +0100 Update bufflen Update buflen login-utils/setpwnam.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit b3a1d92a9078fada31b2cf64b802edd616026766 Author: Chen Qi Date: Mon May 26 15:24:16 2025 +0800 lsfd/mkfds-foreign-sockets: skip when lacking sock_diag ability The ENDPOINTS will need sock_diag ability. The kernel might not enable related configs. Check and skip in case of lacking such ability. Fixes: https://github.com/util-linux/util-linux/issues/3590 Signed-off-by: Chen Qi tests/ts/lsfd/mkfds-foreign-sockets | 2 ++ 1 file changed, 2 insertions(+) commit b35e30e5eb183517cfedd38e106460f0497c8320 Author: formtapez Date: Sat May 24 23:39:04 2025 +0200 fix sectors typos disk-utils/fdisk.c | 2 +- po/ca.po | 2 +- po/cs.po | 2 +- po/da.po | 2 +- po/de.po | 2 +- po/et.po | 2 +- po/eu.po | 2 +- po/fi.po | 2 +- po/fr.po | 2 +- po/gl.po | 2 +- po/hr.po | 2 +- po/hu.po | 2 +- po/id.po | 2 +- po/it.po | 2 +- po/ja.po | 2 +- po/ka.po | 2 +- po/ko.po | 2 +- po/nl.po | 2 +- po/pl.po | 2 +- po/pt.po | 2 +- po/pt_BR.po | 2 +- po/ro.po | 2 +- po/ru.po | 2 +- po/sk.po | 2 +- po/sl.po | 2 +- po/sr.po | 2 +- po/sv.po | 2 +- po/tr.po | 2 +- po/uk.po | 2 +- po/util-linux.pot | 2 +- po/vi.po | 2 +- po/zh_CN.po | 2 +- po/zh_TW.po | 2 +- 33 files changed, 33 insertions(+), 33 deletions(-) commit b77b8172dbd4dfc31c55481de00eba62f1b87416 Author: Matteo Croce Date: Thu May 22 22:44:32 2025 +0200 fincore: add option to show a grand total Similarly to `du`, add a --total option to produce a grand total of the files analyzed. Signed-off-by: Matteo Croce misc-utils/fincore.1.adoc | 3 ++ misc-utils/fincore.c | 29 ++++++++++++++++-- tests/expected/fincore/count.err | 2 ++ tests/expected/fincore/count.total | 33 ++++++++++++++++++++ tests/ts/fincore/count | 62 ++++++++++++++++++++++++++++++++++++++ 5 files changed, 127 insertions(+), 2 deletions(-) commit aaa9e718c88d6916b003da7ebcfe38a3c88df8e6 Author: Mohamed Maatallah Date: Sat May 24 03:16:09 2025 +0100 Update setpwnam.c login-utils/setpwnam.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) commit c6059d72a372060d0afcd1ae3c2b7ee367f24975 Merge: 8946af8e5 5aa7ad17f Author: Karel Zak Date: Thu May 22 10:21:42 2025 +0200 Merge branch 'xry111/loongarch-isa-linux-6-12' of https://github.com/xry111/util-linux * 'xry111/loongarch-isa-linux-6-12' of https://github.com/xry111/util-linux: lscpu: Fix loongarch op-mode output with recent kernel commit 23a7e0865ad56c46a69084974182b9979592b867 Author: Karel Zak Date: Thu May 22 10:01:03 2025 +0200 lsblk: use ID_PART_ENTRY_SCHEME as fallback for PTTYPE The udev database typically inherits the ID_PART_TABLE_TYPE property from the entire disk device to its partitions. However, in some cases, this property may be missing. Fortunately, blkid/udev also provides ID_PART_ENTRY_SCHEME for all partitions. Fixes: https://github.com/util-linux/util-linux/issues/3570 Signed-off-by: Karel Zak misc-utils/lsblk-properties.c | 9 +++++++++ 1 file changed, 9 insertions(+) commit 5aa7ad17fc17b9458ff4381294c27d176c651d5d Author: Xi Ruoyao Date: Thu May 22 13:04:48 2025 +0800 lscpu: Fix loongarch op-mode output with recent kernel Since Linux-6.12, the "loongarch32" item in the ISA field is separated to "loongarch32r" and "loongarch32s," breaking our expectation. Link: https://git.kernel.org/torvalds/c/34e3c4500cdc Signed-off-by: Xi Ruoyao sys-utils/lscpu-cputype.c | 4 +- .../lscpu/lscpu-loongarch-kvm_on_loongson_3c6000 | 108 +++++++++++++++++++++ .../dumps/loongarch-kvm_on_loongson_3c6000.tar.gz | Bin 0 -> 50753 bytes 3 files changed, 111 insertions(+), 1 deletion(-) commit 8946af8e5bc535fc3c075583cac8253dcbbe6336 Author: Daniel Lublin Date: Wed May 21 11:20:34 2025 +0200 uuidgen.1.adoc: remove superfluous 'plus' Likely copy-paste mistake from the --time flag misc-utils/uuidgen.1.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 4daee3ce9485d1ace09d789b9332aa8f57606d21 Merge: 8fabaa8b7 5e91658d0 Author: Karel Zak Date: Wed May 21 11:05:38 2025 +0200 Merge branch 'login_fix' of https://github.com/echoechoin/util-linux * 'login_fix' of https://github.com/echoechoin/util-linux: login: (adoc) add a description about LOGIN_SHELL_FALLBACK login: using an avaiable shell while logging in. commit 8fabaa8b76b03e6c4bd4cd6a266e30152f9e5ec9 Author: Matteo Croce Date: Sat Apr 19 03:09:25 2025 +0200 fincore: add recursive directory scanning Add a --recursive flag to fincore which allows to recursively scan directories. Co-authored-by: Karel Zak Signed-off-by: Matteo Croce bash-completion/fincore | 1 + configure.ac | 4 + meson.build | 1 + misc-utils/fincore.1.adoc | 3 + misc-utils/fincore.c | 88 ++++++++++++++------- tests/expected/fincore/count.16384 | 53 +++++++++++++ tests/expected/fincore/count.16384.recursive | 12 +++ tests/expected/fincore/count.4096 | 50 ++++++------ tests/expected/fincore/count.4096.recursive | 12 +++ tests/expected/fincore/count.65536 | 36 ++++----- tests/expected/fincore/count.65536.recursive | 12 +++ .../expected/fincore/{count.err.4096 => count.err} | 0 tests/expected/fincore/count.err.65536 | 4 - tests/expected/fincore/count.err.nosize | 4 - tests/expected/fincore/count.nosize | 32 ++++---- tests/expected/fincore/count.nosize.recursive | 12 +++ tests/helpers/test_sysinfo.c | 90 ++++++++++++++++++++++ tests/ts/fincore/count | 65 +++++++++++++--- 18 files changed, 372 insertions(+), 107 deletions(-) commit 5e91658d03029bfe5e503a3e1a6528552e75c4e0 Author: WanBingjiang Date: Wed May 21 09:49:33 2025 +0800 login: (adoc) add a description about LOGIN_SHELL_FALLBACK login-utils/login.1.adoc | 4 ++++ 1 file changed, 4 insertions(+) commit 78914c80540663e666841713b3a3ef7ae5396e05 Author: Karel Zak Date: Tue May 20 20:08:09 2025 +0200 treewide: improve getauxval(AT_SECURE) usage Let's enhance portability and readability slightly. Signed-off-by: Karel Zak configure.ac | 2 ++ include/c.h | 14 ++++++++++++++ include/debug.h | 5 +++-- lib/env.c | 3 +-- libmount/src/context.c | 3 +-- login-utils/chfn.c | 5 ++--- login-utils/chsh.c | 3 +-- login-utils/su-common.c | 3 +-- meson.build | 2 ++ sys-utils/swapon.c | 3 +-- term-utils/wall.c | 4 +--- text-utils/more.c | 4 +--- 12 files changed, 30 insertions(+), 21 deletions(-) commit f8d41ab00438a85cc955b9b2004f3034b8fa6029 Merge: 2461c23de b36add065 Author: Karel Zak Date: Tue May 20 19:49:13 2025 +0200 Merge branch 'at_secure' of https://github.com/MaxKellermann/util-linux into PR/AT_SECURE * 'at_secure' of https://github.com/MaxKellermann/util-linux: lib/env, ...: use getauxval(AT_SECURE) for SUID check commit ea04d719352add738251446315cebdada90171a9 Author: Karel Zak Date: Tue May 20 10:10:59 2025 +0200 lscpu: fix possible buffer overflow in cpuinfo parser Addresses: https://github.com/util-linux/util-linux/pull/3577 Signed-off-by: Karel Zak sys-utils/lscpu-cputype.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) commit 2461c23de03c450a6d399ad1870caf56460f77b8 Author: Karel Zak Date: Mon May 19 12:17:25 2025 +0200 lib/shells: fix indentation Signed-off-by: Karel Zak lib/shells.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 50bb8ee2e173d3e4a503c31f260f60e308991373 Merge: 109707d7e c32b42925 Author: Karel Zak Date: Mon May 19 12:13:20 2025 +0200 Merge branch 'master' of https://github.com/shashank-mahadasyam/util-linux * 'master' of https://github.com/shashank-mahadasyam/util-linux: bash-completion: (chrt) add completion for -e/--ext chrt: (man) add SCHED_EXT tests: add chrt SCHED_EXT test chrt: add support for SCHED_EXT commit 109707d7eb7fbc8c84855c7b94ac01b1f044366e Merge: 7bcb91fdf 35435649a Author: Karel Zak Date: Mon May 19 11:39:14 2025 +0200 Merge branch 'PR/add_ul_prefix' of https://github.com/karelzak/util-linux-work * 'PR/add_ul_prefix' of https://github.com/karelzak/util-linux-work: treewide: add ul_ to parse_timestamp() function name treewide: add ul_ to parse_switch() function name treewide: add ul_ to parse_size() function name treewide: add ul_ to parse_range() function name commit 7bcb91fdf4f2c3bae7581bdd46f551d6f3c381a9 Merge: e8cb24538 765b9259f Author: Karel Zak Date: Mon May 19 11:36:39 2025 +0200 Merge branch 'only-_exit-in-shlib' of https://github.com/crrodriguez/util-linux * 'only-_exit-in-shlib' of https://github.com/crrodriguez/util-linux: Do not call exit() on code ending in shared libraries commit e8cb245387116650d6bb9f26349b62bb4f62c701 Merge: d2eeccf36 284527cff Author: Karel Zak Date: Mon May 19 11:34:12 2025 +0200 Merge branch 'master' of https://github.com/stanislav-brabec/util-linux * 'master' of https://github.com/stanislav-brabec/util-linux: libblkid: Fix crash while parsing config with libeconf commit d2eeccf36542d506b660641a07a44f3976772897 Author: Chen Qi Date: Thu May 15 16:44:33 2025 +0800 tests/ts/kill/decode: avoid using shell built-in kill command This test case should do the same as other kill test cases, avoiding using shell built-in kill command. Signed-off-by: Chen Qi tests/ts/kill/decode | 5 +++++ 1 file changed, 5 insertions(+) commit 4a795a545625b6e4fd27030266b3317c9cddfa78 Author: WanBingjiang Date: Thu May 8 10:28:48 2025 +0800 shells.c: call setusershell before getusershell lib/shells.c | 1 + 1 file changed, 1 insertion(+) commit 765b9259fa75e7cab64de4bcfdd2f49cb63efedb Author: Cristian Rodríguez Date: Sat May 17 15:07:02 2025 -0400 Do not call exit() on code ending in shared libraries It is not cool to call atexit() handlers of unknown applications from shared libraries, use _exit instead. Signed-off-by: Cristian Rodríguez lib/canonicalize.c | 2 +- libblkid/src/topology/dm.c | 2 +- libblkid/src/topology/lvm.c | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) commit 284527cff2bd22da2924881a4a4833049dca0d2e Author: Stanislav Brabec Date: Fri May 16 03:10:14 2025 +0200 libblkid: Fix crash while parsing config with libeconf As the whole econf_file structure is freed by econf_free(file) at the end of blkid_read_config(), econf_file structure cannot be defined as static and initialized only once. The econf_free() is not robust enough and keeps a pointer to the garbage after the first call of blkid_read_config(). And if /etc/blkid.conf does not exist, it is called second time. Signed-off-by: Stanislav Brabec Cc: Stefan Schubert Link: https://bugzilla.opensuse.org/show_bug.cgi?id=1242705 libblkid/src/config.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit c32b42925b1016fd6018cbae74e721d6335619d6 Author: Shashank Balaji Date: Sat May 17 02:03:43 2025 +0900 bash-completion: (chrt) add completion for -e/--ext chrt's -e/--ext corresponds to the SCHED_EXT scheduling policy, which, for the purposes of bash completion, behaves just like --other, --idle, and --batch Signed-off-by: Shashank Balaji bash-completion/chrt | 1 + 1 file changed, 1 insertion(+) commit 3e667cf7ed8efc2a333e11a82bb0d364ca762e58 Author: Shashank Balaji Date: Fri May 16 18:36:21 2025 +0900 chrt: (man) add SCHED_EXT Signed-off-by: Shashank Balaji schedutils/chrt.1.adoc | 3 +++ 1 file changed, 3 insertions(+) commit d7edb3cf601ba98113b54a7498b8d103503aa454 Author: Shashank Balaji Date: Fri May 16 18:35:15 2025 +0900 tests: add chrt SCHED_EXT test Signed-off-by: Shashank Balaji tests/expected/schedutils/chrt-ext | 4 ++++ tests/ts/schedutils/chrt | 9 +++++++++ 2 files changed, 13 insertions(+) commit ae4e6b20e2f6d140478627ec2df1e9f8a5113ef8 Author: Shashank Balaji Date: Fri May 16 18:33:45 2025 +0900 chrt: add support for SCHED_EXT SCHED_EXT lets processes be scheduled by a BPF program-defined scheduler. This is supported since kernel version 6.12. Signed-off-by: Shashank Balaji schedutils/chrt.c | 16 +++++++++++++++- schedutils/sched_attr.h | 8 ++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) commit 0a21358af3e50fcb13a9bf3702779f11a4739667 Author: Karel Zak Date: Tue May 13 11:48:11 2025 +0200 logger: drop pointless bitfields References: 63d7937180fcce4ea7fc1d2855872e464f06e779 Signed-off-by: Karel Zak misc-utils/logger.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) commit 35435649a4d8b48074e1b2e4f1d4c39cd5733d4b Author: Karel Zak Date: Tue May 13 11:32:14 2025 +0200 treewide: add ul_ to parse_timestamp() function name Signed-off-by: Karel Zak include/timeutils.h | 2 +- lib/timeutils.c | 4 ++-- login-utils/last.c | 6 +++--- misc-utils/cal.c | 2 +- sys-utils/dmesg.c | 4 ++-- sys-utils/hwclock.c | 2 +- sys-utils/rtcwake.c | 2 +- 7 files changed, 11 insertions(+), 11 deletions(-) commit 818341be5acd8e98c81c283b84e7bc6b8bd23df1 Author: Karel Zak Date: Tue May 13 11:26:49 2025 +0200 treewide: add ul_ to parse_switch() function name Signed-off-by: Karel Zak include/strutils.h | 2 +- lib/strutils.c | 6 +++--- sys-utils/eject.c | 4 ++-- sys-utils/irqtop.c | 2 +- sys-utils/losetup.c | 2 +- sys-utils/tunelp.c | 8 ++++---- term-utils/setterm.c | 24 ++++++++++++------------ 7 files changed, 24 insertions(+), 24 deletions(-) commit c6b3e9888dca27942f38a85ada8710c44e82ef02 Author: Karel Zak Date: Tue May 13 11:25:39 2025 +0200 treewide: add ul_ to parse_size() function name Signed-off-by: Karel Zak disk-utils/cfdisk.c | 2 +- disk-utils/fdisk.c | 2 +- include/strutils.h | 2 +- lib/strutils.c | 4 ++-- libfdisk/src/gpt.c | 2 +- libfdisk/src/script.c | 8 ++++---- sys-utils/lscpu-topology.c | 2 +- 7 files changed, 11 insertions(+), 11 deletions(-) commit dbbe9e7d2456bb9a1f336658bb9bb02babf7b30f Author: Karel Zak Date: Tue May 13 11:24:48 2025 +0200 treewide: add ul_ to parse_range() function name Signed-off-by: Karel Zak disk-utils/partx.c | 2 +- include/strutils.h | 2 +- lib/strutils.c | 2 +- text-utils/column.c | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) commit f7dbf159534ef0488cc1eede9fb757c2bebae5ec Merge: 7d514ef87 3b2899a8c Author: Karel Zak Date: Tue May 13 08:09:37 2025 +0200 Merge branch 'PR/PATH-consolidate' of https://github.com/karelzak/util-linux-work * 'PR/PATH-consolidate' of https://github.com/karelzak/util-linux-work: setpriv: follow /etc/login.defs for PATH su: use logindefs_setenv_path() login: use logindefs_setenv_path() logindefs: Add function to set PATH commit 7d514ef8732cbd29d8b2becabecf1e25d75461ad Merge: 36f9f45e5 71f6d70af Author: Karel Zak Date: Tue May 13 08:09:16 2025 +0200 Merge branch 'PR/login-su-TERM' of https://github.com/karelzak/util-linux-work * 'PR/login-su-TERM' of https://github.com/karelzak/util-linux-work: setpriv: protect COLORTERM and NO_COLOR env. variables su: protect COLORTERM and NO_COLOR env. variables login: protect COLORTERM and NO_COLOR env. variables commit 36f9f45e58e3f0b836fb488ebe5adee06cc52dec Merge: 090d8ca7b cdc8b265b Author: Karel Zak Date: Tue May 13 08:08:54 2025 +0200 Merge branch 'PR/mount-hint-tty' of https://github.com/karelzak/util-linux-work * 'PR/mount-hint-tty' of https://github.com/karelzak/util-linux-work: mount: check for stdout for fstab reload hint commit 090d8ca7bacdd4e27b95415ddc8adbbc7dc13e49 Merge: 4e417332f 00e70d300 Author: Karel Zak Date: Tue May 13 08:08:33 2025 +0200 Merge branch 'PR/libmount-escape' of https://github.com/karelzak/util-linux-work * 'PR/libmount-escape' of https://github.com/karelzak/util-linux-work: libmount: add function to remove escaped chars commit b36add06585acf77e1a50fc0d2c901a0129582a4 Author: Max Kellermann Date: Sat May 10 22:26:50 2025 +0200 lib/env, ...: use getauxval(AT_SECURE) for SUID check Comparing effective and real uid/gid is not a proper way to check for SUID execution: 1. this does not consider file capabilities 2. this check breaks when NO_NEW_PRIVS is used as the Linux kernel resets effective ids during execve(); this means the check is false, but the process still has raised capabilities For more details about the NO_NEW_PRIVS problem, check this post and the surrounding thread: https://lore.kernel.org/lkml/20250509184105.840928-1-max.kellermann@ionos.com/ Signed-off-by: Max Kellermann include/debug.h | 3 ++- lib/env.c | 3 ++- libmount/src/context.c | 6 +++--- login-utils/chfn.c | 5 +++-- login-utils/chsh.c | 3 ++- login-utils/su-common.c | 4 ++-- sys-utils/swapon.c | 3 ++- term-utils/wall.c | 3 ++- text-utils/more.c | 3 ++- 9 files changed, 20 insertions(+), 13 deletions(-) commit fce1b6502982f076537153edf35a77cfc5a3d1c6 Author: WanBingjiang Date: Thu May 8 10:14:35 2025 +0800 login: using an avaiable shell while logging in. login-utils/login.c | 105 ++++++++++++++++++++++++++++++++++++++-------------- 1 file changed, 77 insertions(+), 28 deletions(-) commit 71f6d70af5ec22f0a59f556373561215d989e0d0 Author: Karel Zak Date: Wed May 7 12:52:47 2025 +0200 setpriv: protect COLORTERM and NO_COLOR env. variables The patch also replaces set/get env with ul_env_list to protect variables. Fixes: https://github.com/util-linux/util-linux/issues/3463 Signed-off-by: Karel Zak sys-utils/setpriv.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) commit 3b2899a8c4ca1fa2551bfa5d149e069868d8dc31 Author: Karel Zak Date: Wed May 7 12:32:11 2025 +0200 setpriv: follow /etc/login.defs for PATH The patch also cleans up the --reset-env description in the man page. Fixes: https://github.com/util-linux/util-linux/issues/3560 Signed-off-by: Karel Zak meson.build | 2 +- sys-utils/Makemodule.am | 3 ++- sys-utils/setpriv.1.adoc | 7 +++++-- sys-utils/setpriv.c | 7 +++---- 4 files changed, 11 insertions(+), 8 deletions(-) commit 08b3aa91ed795070e8f94b9dcd21329cc39e86d1 Author: Karel Zak Date: Wed May 7 12:06:47 2025 +0200 su: use logindefs_setenv_path() Signed-off-by: Karel Zak login-utils/su-common.c | 24 +++++------------------- 1 file changed, 5 insertions(+), 19 deletions(-) commit 0ad2ceadc06a4289092d222c8a538fc28f5039d8 Author: Karel Zak Date: Wed May 7 12:06:21 2025 +0200 login: use logindefs_setenv_path() Signed-off-by: Karel Zak login-utils/login.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) commit 7b0423d33cc70928ae1138d95a48d0031f60c90a Author: Karel Zak Date: Wed May 7 12:03:51 2025 +0200 logindefs: Add function to set PATH Let's avoid duplicate code in su() and login(1). Signed-off-by: Karel Zak include/logindefs.h | 3 +++ lib/logindefs.c | 16 ++++++++++++++++ 2 files changed, 19 insertions(+) commit 81bb42426b1569e40f86cecdd208b5bdfda915f0 Author: Karel Zak Date: Wed May 7 11:35:05 2025 +0200 su: protect COLORTERM and NO_COLOR env. variables Fixes: https://github.com/util-linux/util-linux/issues/3463 Signed-off-by: Karel Zak login-utils/runuser.1.adoc | 2 +- login-utils/su-common.c | 4 +++- login-utils/su.1.adoc | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) commit aa339595eaa2172142070218fee7072051e81584 Author: Karel Zak Date: Wed May 7 11:34:26 2025 +0200 login: protect COLORTERM and NO_COLOR env. variables Fixes: https://github.com/util-linux/util-linux/issues/3463 Signed-off-by: Karel Zak login-utils/login.1.adoc | 4 +++- login-utils/login.c | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) commit cdc8b265bff5ee1ebd496aa1d6211e4ba120f766 Author: Karel Zak Date: Wed May 7 10:47:13 2025 +0200 mount: check for stdout for fstab reload hint Fixes: https://github.com/util-linux/util-linux/issues/3558 Signed-off-by: Karel Zak sys-utils/mount.c | 11 +++++++++++ 1 file changed, 11 insertions(+) commit 4e417332f4154acb0e7a12c775696eb561a405aa Merge: 91dbf35a6 7d37ae27e Author: Karel Zak Date: Mon May 5 15:02:23 2025 +0200 Merge branch 'ci/openwrt-mips' of https://github.com/t-8ch/util-linux * 'ci/openwrt-mips' of https://github.com/t-8ch/util-linux: ci: build on MIPS ci: add OpenWRT subtarget to matrix name commit 91dbf35a6c74a20691f88fa1d7d88e734f68f40b Merge: 6ac5de371 5298e2344 Author: Karel Zak Date: Mon May 5 13:10:05 2025 +0200 Merge branch 'PR/parse_switch' of https://github.com/karelzak/util-linux-work * 'PR/parse_switch' of https://github.com/karelzak/util-linux-work: fix and add parse_switch() test strutils: move an error message to where it is used, and improve it irqtop: use standard 'always/never' arguments instead of 'enable/disable' commit 00e70d300c8e73a3c6a9e7398a48f780fc006f59 Author: Karel Zak Date: Mon May 5 13:04:54 2025 +0200 libmount: add function to remove escaped chars Follow-up: 8a69fa852dd5f41f8456756d18bfac6d8208219f https://github.com/util-linux/util-linux/pull/3541 Signed-off-by: Karel Zak include/mangle.h | 7 +++++++ lib/mangle.c | 31 ++++++++++++++++++++++++++++++- libmount/src/hook_mount.c | 16 +++++----------- 3 files changed, 42 insertions(+), 12 deletions(-) commit 6ac5de371cc72616409d1091415e395a1b584ec4 Merge: d4ee07835 45f943a4b Author: Karel Zak Date: Mon May 5 13:07:11 2025 +0200 Merge branch 'PR/bits-build' of https://github.com/karelzak/util-linux-work * 'PR/bits-build' of https://github.com/karelzak/util-linux-work: bits: only build when cpu_set_t is available commit d4ee0783532b05c87ee1b1e47df8ca233d353833 Merge: 48cf64881 18e5242e0 Author: Karel Zak Date: Mon May 5 13:06:47 2025 +0200 Merge branch 'PR/Benno-29Apr' of https://github.com/karelzak/util-linux-work * 'PR/Benno-29Apr' of https://github.com/karelzak/util-linux-work: po-man: add hyperlink.adoc to po4a.cfg docs,usage: harmonize description of --hyperlink, and add 2 missing ones pipesz: report default size in --help, instead of referring the user lsfd: improve grammar, and use angular brackets around placeholder word uuidd: put an option and its description in a single message pipesz: (man) improve the markup and some wordings irqtop: make the wording of an error message identical to that of another unshare: make the wording of a message identical to that of three others commit 48cf6488151c03c83af7dea31cfd5f6a6e7ea8a8 Merge: 5f07f9ae0 5ef57d519 Author: Karel Zak Date: Mon May 5 13:06:23 2025 +0200 Merge branch 'PR/hardlink-logging' of https://github.com/karelzak/util-linux-work * 'PR/hardlink-logging' of https://github.com/karelzak/util-linux-work: hardlink: define more function as inline hardlink: fix performance regression (inefficient signal evaluation) hardlink: Use macro for verbose output commit 5298e23446056106ede278d8eb0b2807ca63621e Author: Karel Zak Date: Mon May 5 12:18:10 2025 +0200 fix and add parse_switch() test Signed-off-by: Karel Zak lib/strutils.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) commit 5f07f9ae0f1c0b626c2322eabbf9ea567b7c291b Merge: 0e4f4f6f9 8a69fa852 Author: Karel Zak Date: Mon May 5 10:48:09 2025 +0200 Merge branch 'master' of https://github.com/echoechoin/util-linux * 'master' of https://github.com/echoechoin/util-linux: strutils.c: ignore escape characters while parsing options. commit 145085292aa06e31068dc05cd56b42e42773bf47 Author: Benno Schulenberg Date: Fri May 2 14:22:42 2025 +0200 strutils: move an error message to where it is used, and improve it Calling gettext() is somewhat costly: it has to find the given message among the more than five thousand messages in util-linux's repertoire. So, call gettext() only when the message actually gets printed. Besides, allowing to customize the error message for parse_switch() was a nice gesture, but it's unneeded: a fixed error message is good enough. Also, "argument error" was rather vague, as it doesn't say _what_ the error is. Better say "unsupported argument". Signed-off-by: Benno Schulenberg include/strutils.h | 2 +- lib/strutils.c | 8 ++++---- sys-utils/eject.c | 6 ++---- sys-utils/irqtop.c | 3 +-- sys-utils/losetup.c | 2 +- sys-utils/tunelp.c | 8 ++++---- term-utils/setterm.c | 36 ++++++++++++------------------------ 7 files changed, 25 insertions(+), 40 deletions(-) commit 6b3687403a35a20e304fbdfb6e345775a7c8ec57 Author: Benno Schulenberg Date: Fri May 2 14:22:41 2025 +0200 irqtop: use standard 'always/never' arguments instead of 'enable/disable' Most other util-linux tools that accept the option argument "auto" additionally accept "always" and "never", not "enable" / "disable". So, make option --cpu-stat accept those standard words (besides the deviant ones), and adjust the documentation to use the standard words. Furthermore, make --cpu-stat accept also "on", "off", "yes", "no", "1", and "0", to allow the user to use shorter words. The per-CPU stats can now be suppressed with a succinct: `irqtop -c0`. CC: Zhenwei Pi Signed-off-by: Benno Schulenberg bash-completion/irqtop | 2 +- sys-utils/irqtop.1.adoc | 6 ++++-- sys-utils/irqtop.c | 11 +++++------ 3 files changed, 10 insertions(+), 9 deletions(-) commit 45f943a4b36f59814cf5a735e4975f2252afac26 Author: Alyssa Ross Date: Thu May 1 09:58:06 2025 +0200 bits: only build when cpu_set_t is available Doesn't build on macOS. Fixes: 6e1301d59 ("text-utils: add bits command") Signed-off-by: Alyssa Ross configure.ac | 6 +++++- meson.build | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) commit 18e5242e0cb6ad8e98e89975e2553b327d169863 Author: Karel Zak Date: Wed Apr 30 13:14:02 2025 +0200 po-man: add hyperlink.adoc to po4a.cfg Signed-off-by: Karel Zak po-man/po4a.cfg | 1 + 1 file changed, 1 insertion(+) commit f6531ecfd2e9cd2210412f77543a5db1c7952952 Author: Benno Schulenberg Date: Sat Apr 26 11:30:18 2025 +0200 docs,usage: harmonize description of --hyperlink, and add 2 missing ones Harmonize the description by placing the option in a separate file. Also, use _when_/ (instead of _mode_/) as the optional argument, since the possible values are: "always", "never", "auto". Signed-off-by: Benno Schulenberg lsfd-cmd/lsfd.1.adoc | 3 +-- lsfd-cmd/lsfd.c | 2 +- man-common/Makemodule.am | 1 + man-common/hyperlink.adoc | 5 +++++ man-common/meson.build | 1 + misc-utils/findmnt.8.adoc | 6 +----- misc-utils/findmnt.c | 2 ++ misc-utils/lsblk.8.adoc | 3 +-- misc-utils/lsblk.c | 2 ++ 9 files changed, 15 insertions(+), 10 deletions(-) commit fa6d89e6e313bfd234bbf286023da7ae73769ce9 Author: Benno Schulenberg Date: Fri Apr 25 12:34:21 2025 +0200 pipesz: report default size in --help, instead of referring the user The man page says where this default size can be found. In the --help text it is more useful to directly say what this default size is. CC: Nathan Sharp Signed-off-by: Benno Schulenberg misc-utils/pipesz.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit ecd6167a7a3ce57d7392b74d9799456f6fbedf11 Author: Benno Schulenberg Date: Fri Apr 25 12:32:08 2025 +0200 lsfd: improve grammar, and use angular brackets around placeholder word Also, use (the standard way to indicate multiple arguments) as argument of --pid, and don't use "" when the possible arguments differ from "always", "never", "auto". In addition, improve some wording and markup in the man page. Signed-off-by: Benno Schulenberg lsfd-cmd/lsfd.1.adoc | 33 ++++++++++++++++----------------- lsfd-cmd/lsfd.c | 6 +++--- 2 files changed, 19 insertions(+), 20 deletions(-) commit a0896b9b722157449dde7b4a07dbd13f6c981a10 Author: Benno Schulenberg Date: Thu Apr 24 11:32:37 2025 +0200 uuidd: put an option and its description in a single message Also, improve the markup and the wording in the man page. CC: Michael Trapp Signed-off-by: Benno Schulenberg misc-utils/uuidd.8.adoc | 16 ++++++++++++---- misc-utils/uuidd.c | 4 ++-- 2 files changed, 14 insertions(+), 6 deletions(-) commit 04c01430df3be2ad2c32721971e11b9eef7892e3 Author: Benno Schulenberg Date: Thu Apr 24 11:32:35 2025 +0200 pipesz: (man) improve the markup and some wordings CC: Nathan Sharp Signed-off-by: Benno Schulenberg misc-utils/pipesz.1.adoc | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) commit 5acfc199666aae081889259638d35dd3fea8cf0b Author: Benno Schulenberg Date: Thu Apr 24 11:32:32 2025 +0200 irqtop: make the wording of an error message identical to that of another (Besides: the original looked like a statement, not like an error message.) Signed-off-by: Benno Schulenberg sys-utils/irqtop.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 8782f62fc94baeec540e3d8eacf9407845b5c47a Author: Benno Schulenberg Date: Thu Apr 24 11:32:31 2025 +0200 unshare: make the wording of a message identical to that of three others That is: spare translators having to translate different strings that mean the exact same thing. Signed-off-by: Benno Schulenberg sys-utils/unshare.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 5ef57d519fed61c501f1868348dcdfb31d3e2426 Author: Karel Zak Date: Tue Apr 29 12:50:48 2025 +0200 hardlink: define more function as inline The functions are called many times. Signed-off-by: Karel Zak misc-utils/hardlink.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 87831fa19e241803f93556cbeaad153e6ba89b6c Author: Karel Zak Date: Tue Apr 29 12:29:32 2025 +0200 hardlink: fix performance regression (inefficient signal evaluation) During work on better verbose output, I found a regression between v2.40 and v2.41 (and v2.42). In the new version, hardlink is 3-4 times slower. The problem is in the function where we verify signals. It calls the function signal() even though no signal is delivered. It's called in code loops where hardlink scans files, making it a performance-sensitive area. Another significant performance improvement is using an inline function for handle_interrupt(). This simple patch improves hardlink performance by 10 times. Fixes: http://github.com/util-linux/util-linux/commit/1453200e22dd4ec858be027653c167225f2fb358 Signed-off-by: Karel Zak misc-utils/hardlink.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit 5a2600c55f278c1252708cb3bdede92e27ccd04e Author: Karel Zak Date: Tue Apr 29 11:49:23 2025 +0200 hardlink: Use macro for verbose output Now that jlog() is a function, all gettext() arguments are evaluated in all cases, including when output is unnecessary due to --quiet or low verbose mode. Fixes: https://github.com/util-linux/util-linux/issues/3548 Signed-off-by: Karel Zak misc-utils/hardlink.c | 132 +++++++++++++++++++++++++------------------------- 1 file changed, 65 insertions(+), 67 deletions(-) commit 7d37ae27e24a6e76135a461bd636d52dd3c70a1d Author: Thomas Weißschuh Date: Tue Aug 6 22:58:04 2024 +0200 ci: build on MIPS OpenWRT has SDKs targetting MIPS 32/64 bit, little/big endian. Currently util-linux CI only uses 32 bit little endian through ath79. Add a big-endian 64bit and little-endian 32bit architecture, too. Signed-off-by: Thomas Weißschuh .github/workflows/cibuild.yml | 6 ++++++ 1 file changed, 6 insertions(+) commit b7e9d058ae653b9741d2cff88a231106677386a7 Author: Thomas Weißschuh Date: Tue Aug 6 23:01:57 2024 +0200 ci: add OpenWRT subtarget to matrix name Signed-off-by: Thomas Weißschuh .github/workflows/cibuild.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 0e4f4f6f9e0c165b04c5663091548a342cc2f2ec Author: Karel Zak Date: Fri Apr 25 10:46:07 2025 +0200 libmount: fix typo in comment Signed-off-by: Karel Zak libmount/src/fs_statmount.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit ad2550b77608992ebcb846ffa5e6f5fbadf929fb Merge: 1806792d4 78ade4387 Author: Karel Zak Date: Fri Apr 25 10:39:59 2025 +0200 Merge branch 'PR/statmount-cleanup' of https://github.com/karelzak/util-linux-work * 'PR/statmount-cleanup' of https://github.com/karelzak/util-linux-work: libmount: use and add has_listmount() libmount: avoid calling memset() unnecessarily libmount: clean up statmount syscall-related functions commit 1806792d4fd4928e09228ca6cc776fb46b196d89 Author: Karel Zak Date: Thu Apr 24 19:25:11 2025 +0200 Wipefs: improve --all descriptions for whole-disks Addresses: https://github.com/util-linux/util-linux/issues/3544 Signed-off-by: Karel Zak misc-utils/wipefs.8.adoc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) commit 78ade43875b09436616421a6dd10d53673fde415 Author: Karel Zak Date: Thu Apr 24 18:45:24 2025 +0200 libmount: use and add has_listmount() Signed-off-by: Karel Zak include/mount-api-utils.h | 11 +++++++++++ libmount/src/tab_listmount.c | 19 +++++++------------ tests/helpers/test_sysinfo.c | 9 ++++----- 3 files changed, 22 insertions(+), 17 deletions(-) commit 9e96e6ed9cce4cbaf3b9ca6e61d0b0ee070685e9 Author: Karel Zak Date: Thu Apr 24 18:32:35 2025 +0200 libmount: avoid calling memset() unnecessarily This is primarily to satisfy static analyzers, as memset() is defined as a non-null function (although it does nothing when bufsiz=0). Signed-off-by: Karel Zak libmount/src/fs_statmount.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) commit b3bb829106e18c01c1fd984b3f68f22eba2c0c19 Author: Karel Zak Date: Thu Apr 24 18:16:07 2025 +0200 libmount: clean up statmount syscall-related functions * Rename the raw version of the syscall from ul_statmount() to ul_statmount_syscall(). * Rename `sys_statmount()` to `ul_statmount()`. The goal is to use the same naming convention as `ul_listmount()` for a function that is expected to be called from code. * Move ul_statmount() to be in the same #ifdef block as the rest of the statmount code in the header file. * Add has_statmount() to make it easy to verify the usability of the statmount syscall. Signed-off-by: Karel Zak include/mount-api-utils.h | 47 +++++++++++++++++++++++++++----------------- libmount/src/fs_statmount.c | 9 ++++----- tests/helpers/test_sysinfo.c | 8 ++++---- 3 files changed, 37 insertions(+), 27 deletions(-) commit 8ae8ef764a9f5bf2c04510618d86d76760d043ff Author: Benno Schulenberg Date: Thu Apr 17 11:48:24 2025 +0200 docs: correct mistaken uses of "overwrite" to say "override" instead This mostly comes down to harmonizing the wording and markup of the various --lock options. Signed-off-by: Benno Schulenberg disk-utils/cfdisk.8.adoc | 7 ++++++- disk-utils/fdisk.8.adoc | 7 ++++++- disk-utils/mkfs.bfs.8.adoc | 7 ++++++- disk-utils/mkfs.cramfs.8.adoc | 4 ++-- disk-utils/mkfs.minix.8.adoc | 7 ++++++- disk-utils/mkswap.8.adoc | 7 ++++++- disk-utils/sfdisk.8.adoc | 7 ++++++- misc-utils/logger.1.adoc | 2 +- misc-utils/wipefs.8.adoc | 7 ++++++- sys-utils/hwclock.8.adoc | 12 ++++++++++-- sys-utils/losetup.8.adoc | 11 +++++++++-- sys-utils/mount.8.adoc | 3 ++- 12 files changed, 66 insertions(+), 15 deletions(-) commit 6f13cec60ca3b489e3713f9e75c5e02e953ad793 Author: Benno Schulenberg Date: Thu Apr 17 11:48:23 2025 +0200 docs: correct misspellings of "may be" and mistaken uses of "overwritten" Signed-off-by: Benno Schulenberg disk-utils/sfdisk.8.adoc | 10 ++++++++-- login-utils/lslogins.1.adoc | 8 ++++++-- misc-utils/cal.1.adoc | 8 ++++---- sys-utils/lscpu.1.adoc | 2 +- sys-utils/nsenter.1.adoc | 4 +++- term-utils/agetty.8.adoc | 4 +++- 6 files changed, 25 insertions(+), 11 deletions(-) commit 84e06f92d069057e34d1ab3c049ce594911c6496 Author: Benno Schulenberg Date: Thu Apr 17 11:48:22 2025 +0200 lscpu: (man) don't refer to a missing section, and improve some wordings Three years ago commit aa049eabb3 removed the COLUMNS section but forgot to remove the reference to it. Replace the reference with a referral to the --help text. In the bargain, join two paragraphs that belong together, improve some wordings, and sort two options. This fixes #2590 (https://github.com/util-linux/util-linux/issues/2590). Reported-by: Fabien Malfoy Signed-off-by: Benno Schulenberg sys-utils/lscpu.1.adoc | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) commit d43ba91537038b22276f8c75609013c33554437a Author: Benno Schulenberg Date: Thu Apr 17 11:48:21 2025 +0200 renice: (man) reword several things, to be clearer, and improve some markup Also, remove a reference to ulimit(1p) that doesn't make sense. CC: David Anes Signed-off-by: Benno Schulenberg sys-utils/renice.1.adoc | 37 ++++++++++++++++++++++++++----------- 1 file changed, 26 insertions(+), 11 deletions(-) commit 4b0a1834667ad7598d647cd369925eb0822a7609 Author: Benno Schulenberg Date: Thu Apr 17 11:48:20 2025 +0200 renice: in usage text, condense the oververbose description of option -n The --help text should be concise: it serves only as a reminder of how things work. When a more wordy explanation is needed, there is always the man page (as every --help text says at the end). CC: David Anes Signed-off-by: Benno Schulenberg sys-utils/renice.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) commit b3c3d865eb23a099e8e11c2371b2aecfc5b9cfc8 Author: Benno Schulenberg Date: Thu Apr 17 11:48:19 2025 +0200 terminal-colors.d: (man) reduce two tables to succinct lists Before the move to asciidoctor, these tables were succinct lists in the man page. Change the asciidoc text to make them into lists again. Use {nbsp} on one line to avoid weird groff behavior for \? when .ss is defined to be zero-width (as asciidoctor does), and reshuffle two paragraphs to avoid an asciidoctor bug that adds a spurious \fP after a monospace span defined with double backticks. Also, correct some markup in a few earlier paragraphs. Signed-off-by: Benno Schulenberg lib/terminal-colors.d.5.adoc | 103 ++++++++++++++++++++----------------------- 1 file changed, 48 insertions(+), 55 deletions(-) commit ea3a9a89eda52979555c567286a6d2c842b362ac Author: Benno Schulenberg Date: Thu Apr 17 11:48:18 2025 +0200 rtcwake: (man) reduce an inflated table to sane proportions Asciidoctor puts an unneeded blank line into every table cell (this is fixed in git [1], but not released yet), and will unnecessarily wrap text in a cell when the text is slightly longer than average. Replace the table with a block of preformatted text, and replace the "+5min" example with a true format that covers most cases, and give some examples of that format after the block. [1] https://github.com/asciidoctor/asciidoctor/commit/9cb73f8c9bee Signed-off-by: Benno Schulenberg sys-utils/rtcwake.8.adoc | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) commit 40ebead2abd220c62f5973dd3f18f61013bcee9a Author: Benno Schulenberg Date: Thu Apr 17 11:48:17 2025 +0200 last: (man) reduce an inflated table to sane proportions Also, reword some things for better flow, improve some markup, and combine username and tty to [username|tty]... in the synopsis, as this better indicates that the two identifiers can be mixed. Furthermore, use quotes around the time formats that contain a space, as otherwise the time would be understood as a user name / tty name. Drop the "tomorrow" and "+5min" examples, as they don't make sense here. And change the "-5days" example to a true format that covers most possibilities, and give a few examples of it after the table. Signed-off-by: Benno Schulenberg login-utils/last.1.adoc | 77 ++++++++++++++++++++++++++++++------------------- 1 file changed, 47 insertions(+), 30 deletions(-) commit f1454725bd2c90f3c03c9a900a8e7a7fe8a94a3a Author: Benno Schulenberg Date: Thu Apr 17 11:48:16 2025 +0200 last: (man) correct the descriptions of --present and --since Doing `last --present -24h` will show who was logged in around this time yesterday. But when doing (what according to the man page is equivalent) `last --since -24h --until -24h` nothing will be shown -- unless someone logged in exactly 24 hours ago to the second. So, correct the descriptions of --present and --since. This fixes #1896 (https://github.com/util-linux/util-linux/issues/1896). Reported-by: Finn Krein-Schuch Signed-off-by: Benno Schulenberg login-utils/last.1.adoc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) commit 600e6e25a0fba4594603d00cfcc3e6108e5c5571 Author: Benno Schulenberg Date: Thu Apr 17 11:48:15 2025 +0200 bits: (man) normalize the markup and improve some layout The convention in man pages is: to put command arguments in lowercase and without angle brackets (these are for --help texts), and without unneeded abbreviations. Literal values (as in some examples) should be in bold, not in italics. CC: Robin Jarry Signed-off-by: Benno Schulenberg Reviewed-by: Robin Jarry text-utils/bits.1.adoc | 80 ++++++++++++++++++++++++++------------------------ 1 file changed, 42 insertions(+), 38 deletions(-) commit 904789e9a5c82179493d92e2e36f1cfbf2ba8f81 Author: Karel Zak Date: Wed Apr 23 11:14:09 2025 +0200 swapoff: check blkid_probe_lookup_value() return code [coverity scan] Signed-off-by: Karel Zak misc-utils/findmnt.c | 3 ++- misc-utils/lsblk.c | 5 +++-- sys-utils/swapoff.c | 5 +++-- 3 files changed, 8 insertions(+), 5 deletions(-) commit f5c54536862d61fa83ec4e1e9eeaa7163086275e Merge: 1eca294cb 19a621216 Author: Karel Zak Date: Tue Apr 22 12:24:46 2025 +0200 Merge branch 'PR/swapoff-resolve-leaks' of https://github.com/karelzak/util-linux-work * 'PR/swapoff-resolve-leaks' of https://github.com/karelzak/util-linux-work: swapoff: add comments for do_swapoff swapoff: clean up tag resolution commit 1eca294cbeefb2f862e15c76ec50ed3160db0890 Merge: 1d199b85f 1f106f63c Author: Karel Zak Date: Tue Apr 22 12:24:25 2025 +0200 Merge branch 'spelling' of https://github.com/jwilk-forks/util-linux * 'spelling' of https://github.com/jwilk-forks/util-linux: mount: (man) add missing word commit 1d199b85f98508b69f7278fd1b430ddc38d9db07 Merge: 4546a0296 c5850c36e Author: Karel Zak Date: Tue Apr 22 12:23:31 2025 +0200 Merge branch 'no_strerror_shlib' of https://github.com/crrodriguez/util-linux * 'no_strerror_shlib' of https://github.com/crrodriguez/util-linux: Do not use strerror on shared libraries commit 4546a0296307380ade69a49db914994faf67e3d2 Merge: 11ec8b23e 47ed406f8 Author: Karel Zak Date: Tue Apr 22 12:21:59 2025 +0200 Merge branch 'losetup/udev' of https://github.com/t-8ch/util-linux * 'losetup/udev' of https://github.com/t-8ch/util-linux: lib/loopdev: open loop control device read-only if possible lib/loopdev: clarify comment about device and backing file modes lib/loopdev: remove loopcxt_set_fd() commit 11ec8b23e6b0d485009132de2dfa4ca6eeecf6fa Merge: 0033f9748 588eed1a1 Author: Karel Zak Date: Tue Apr 22 12:20:57 2025 +0200 Merge branch 'fix-befs-fuzz' of https://github.com/mbroz/util-linux * 'fix-befs-fuzz' of https://github.com/mbroz/util-linux: libblkid: befs: fix underflow commit 8a69fa852dd5f41f8456756d18bfac6d8208219f Author: WanBingjiang Date: Tue Apr 22 18:16:41 2025 +0800 strutils.c: ignore escape characters while parsing options. lib/strutils.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) commit 0033f97482a7979e0de71de0a16b583e8d74dbdc Author: Thomas Weißschuh Date: Sat Apr 19 22:02:11 2025 +0200 include/mount-api-utils: include linux/unistd.h If SYS_statmount/SYS_listmount is not provided by the libc, util-linux will fall back to __NR_statmount/__NR_listmount from the kernel UAPI headers. However it is not guaranteed that these symbols are actually visible in mount-api-utils. Include linux/unistd.h which provides syscall numbers. While this header is specific to Linux, the code is already using linux/mount.h. Signed-off-by: Thomas Weißschuh include/mount-api-utils.h | 1 + 1 file changed, 1 insertion(+) commit 588eed1a1de13150750e8a50d855001b27e07357 Author: Milan Broz Date: Sat Apr 19 15:54:40 2025 +0200 libblkid: befs: fix underflow Fix segfault caused by underflow while parsing a corrupted metadata. Found by OSS-Fuzz by cryptsetup project fuzzers (issue 411003898). Signed-off-by: Milan Broz libblkid/src/superblocks/befs.c | 7 +++++++ 1 file changed, 7 insertions(+) commit 75c7b312bf6c046c64095988e5331eaabd1220df Merge: efb22a49e ae19f7546 Author: Karel Zak Date: Wed Apr 16 13:21:47 2025 +0200 Merge branch 'PR/libmount-subdir' of https://github.com/karelzak/util-linux-work * 'PR/libmount-subdir' of https://github.com/karelzak/util-linux-work: libmount: (subdir) support detached open_tree() (>=6.15) libmount: (subdir) restrict for real mounts only libmount: (subdir) remove unused code commit 47ed406f8594fcbcfe12727c6ade4579658a485e Author: Thomas Weißschuh Date: Wed Apr 16 11:55:31 2025 +0200 lib/loopdev: open loop control device read-only if possible Opening the control device read-write to trigger udev events is a hack. It works around a kernel bug which fails to send uevents directly from the kernel by triggering a full udev reprobe. While it works to trigger the events, it is problematic. The udev reprobe will asynchronously recreate all partition devices which requires an ungly locking and synchronization scheme after losetup has completed to guarantee the usability of the partition devices. The kernel has been fixed to properly emit these uevents in commit 7ed2a771b5fb ("loop: properly send KOBJ_CHANGED uevent for disk device"). Drop the workaround. This is a partial revert of commit ced1142d6f25 ("losetup: cleanup device node modes"). Signed-off-by: Thomas Weißschuh lib/loopdev.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) commit c6fc8252299fd4a8b1b02f936ac9dcc7521bd595 Author: Thomas Weißschuh Date: Wed Apr 16 11:53:36 2025 +0200 lib/loopdev: clarify comment about device and backing file modes If either the backing file or ioctl loop device are opened read-only the kernel will silently downgrade the resulting loop device to read-only. Adapt the comment to this. Signed-off-by: Thomas Weißschuh lib/loopdev.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) commit efb22a49e36f8ea74e8a2c5cf6f8fa6546d153d4 Author: Karel Zak Date: Wed Apr 16 10:41:26 2025 +0200 logger: (man) improve --prio-prefix and --stderr description Fixes: https://github.com/util-linux/util-linux/issues/3527 Signed-off-by: Karel Zak misc-utils/logger.1.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit ae19f7546ccb038966fc121e287e1a1385ba94bb Author: Karel Zak Date: Tue Apr 15 12:29:37 2025 +0200 libmount: (subdir) support detached open_tree() (>=6.15) The latest kernel can open a directory as a tree (open_tree()) on a detached mount tree. This means we do not need to unshare and attach the root of the filesystem to a private temporary directory. All this machinery can be replaced by one open_tree() call. Old version: fsopen("ext4", FSOPEN_CLOEXEC) = 3 unshare(CLONE_NEWNS) = 0 fsconfig(3, FSCONFIG_SET_STRING, "source", "/dev/sdc", 0) = 0 fsconfig(3, FSCONFIG_CMD_CREATE, NULL, NULL, 0) = 0 fsmount(3, FSMOUNT_CLOEXEC, 0) = 6 move_mount(6, "", AT_FDCWD, "/run/mount/tmptgt", MOVE_MOUNT_F_EMPTY_PATH) = 0 open_tree(6, "subdir", OPEN_TREE_CLONE|OPEN_TREE_CLOEXEC) = 7 setns(4, CLONE_NEWNS) = 0 move_mount(7, "", AT_FDCWD, "/mnt/test", MOVE_MOUNT_F_EMPTY_PATH) = 0 setns(5, CLONE_NEWNS) = 0 umount2("/run/mount/tmptgt", 0) = 0 setns(4, CLONE_NEWNS) = 0 New version: fsopen("ext4", FSOPEN_CLOEXEC) = 3 fsconfig(3, FSCONFIG_SET_STRING, "source", "/dev/sda", 0) = 0 fsconfig(3, FSCONFIG_CMD_CREATE, NULL, NULL, 0) = 0 fsmount(3, FSMOUNT_CLOEXEC, 0) = 4 open_tree(4, "subdir", OPEN_TREE_CLONE|OPEN_TREE_CLOEXEC|AT_SYMLINK_NOFOLLOW|AT_NO_AUTOMOUNT|AT_RECURSIVE move_mount(5, "", AT_FDCWD, "/mnt/test", MOVE_MOUNT_F_EMPTY_PATH) = 0 Note that this commit does not completely deactivate hook_subdir.c because it is better to keep things in one place. It only adds a "subdir" to the struct libmnt_sysapi to force hook_mount.c to call open_tree(subdir), but all the logic and checks are still in hook_subdir.c. Signed-off-by: Karel Zak libmount/src/hook_mount.c | 26 +++++++++--- libmount/src/hook_subdir.c | 103 +++++++++++++++++++++++++++++++++++---------- libmount/src/mountP.h | 3 ++ 3 files changed, 105 insertions(+), 27 deletions(-) commit 5883462b870858f1f1a7e14a9ba2314f417ad861 Author: Benno Schulenberg Date: Wed Apr 9 11:36:35 2025 +0200 setarch: (man) correct the markup of the synopsis and of two options Drop the second line of the synopsis as it is unneeded (it is covered by the first line since argument "arch" became optional) and distracts from the similarity/contrast between the other two lines. Mark "arch" in the new second synopsis line in italics, as it is a placeholder, not a literal. Also, improve some wording, reduce redundancy by reshuffling the --pid option, and remove a redudant -v from an example. Signed-off-by: Benno Schulenberg sys-utils/setarch.8.adoc | 37 +++++++++++++++++++------------------ 1 file changed, 19 insertions(+), 18 deletions(-) commit 02e0e27d85b6617f024475bf71a84f14b4449841 Merge: 61f4d98f8 ea5df5a2f Author: Karel Zak Date: Wed Apr 16 10:17:49 2025 +0200 Merge branch 'PR/Benno-14Apr' of https://github.com/karelzak/util-linux-work * 'PR/Benno-14Apr' of https://github.com/karelzak/util-linux-work: lastlog2: besides -v, recognize also the standard -V for --version lastlog2: (man) fix some broken markup, and lowercase option arguments docs: add -h/--help and -V/--version to three man pages that lacked them losetup,lscpu: (man) add the missing -h/--help and -V/--version options agetty,setterm: (man) remove the mistakenly added -h and -V short options docs: fix a few indentation issues docs: improve and harmonize the description of -H / --list-columns docs: rewrite the description of --bytes, to be clearer commit 61f4d98f86eaf8b061851ae1de630b5650b0b3aa Merge: 946c0b9c6 6b432d3fb Author: Karel Zak Date: Wed Apr 16 10:17:07 2025 +0200 Merge branch 'ci/llvm-20' of https://github.com/t-8ch/util-linux * 'ci/llvm-20' of https://github.com/t-8ch/util-linux: ci: update gcc to version 14 ci: update clang to version 20 commit 8970f6a46676f5d5abd99ee08c559c7851ccf843 Author: Thomas Weißschuh Date: Tue Apr 15 17:03:30 2025 +0200 lib/loopdev: remove loopcxt_set_fd() It is not used. Signed-off-by: Thomas Weißschuh include/loopdev.h | 1 - lib/loopdev.c | 10 ---------- 2 files changed, 11 deletions(-) commit 6b432d3fbdf1d231c941969f4e113c38c7b52dbe Author: Thomas Weißschuh Date: Tue Apr 15 17:17:38 2025 +0200 ci: update gcc to version 14 Also drop the note about GCC which is obsolete. Skip the coveralls job as it does not yet support GCC 14. Signed-off-by: Thomas Weißschuh .github/workflows/cibuild.yml | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) commit 60a4fa475c549d16ffc0ef7106535a354ea5a9f3 Author: Thomas Weißschuh Date: Tue Apr 15 17:16:49 2025 +0200 ci: update clang to version 20 Signed-off-by: Thomas Weißschuh .github/workflows/cibuild.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 946c0b9c6f6481ed9370b8bd0f54a622a0c4a574 Author: Martin Valgur Date: Tue Apr 15 16:19:21 2025 +0300 meson: fix a bug in posixipc_libs configuration Should append instead of assigning. Otherwise fails with meson.build:1482:22: ERROR: Object <[ExternalLibraryHolder] holds [ExternalLibrary]: > of type ExternalLibrary does not support the `+` operator. meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit ea5df5a2fdbfc8e78f98d93c6e9f5eb90f167ae4 Author: Benno Schulenberg Date: Mon Apr 14 11:45:34 2025 +0200 lastlog2: besides -v, recognize also the standard -V for --version The --help text already proclaimed that -V would work. CC: Stefan Schubert Signed-off-by: Benno Schulenberg misc-utils/lastlog2.8.adoc | 6 +----- misc-utils/lastlog2.c | 5 +++-- 2 files changed, 4 insertions(+), 7 deletions(-) commit c24607ff408443831a509b2a5751776ac3e47efc Author: Benno Schulenberg Date: Mon Apr 14 11:45:33 2025 +0200 lastlog2: (man) fix some broken markup, and lowercase option arguments Also, reshuffle two paragraphs (from the end to the beginning), reword some things, and remove the mistaken _num_ argument of --service. Furthermore, use triple pluses to tell asciidoctor that two asterisks in a message are literal asterisks and not markup: +++**+++. CC: Stefan Schubert Signed-off-by: Benno Schulenberg misc-utils/lastlog2.8.adoc | 68 +++++++++++++++++++++++----------------------- 1 file changed, 34 insertions(+), 34 deletions(-) commit 8d2ea0409ed09644681ef726d0e1be483ceaa719 Author: Benno Schulenberg Date: Mon Apr 14 11:45:32 2025 +0200 docs: add -h/--help and -V/--version to three man pages that lacked them Also, harmonize the wording and placement of these options in a few other man pages, and use an `include` where possible. Signed-off-by: Benno Schulenberg disk-utils/fsck.8.adoc | 2 +- disk-utils/sfdisk.8.adoc | 6 +++--- misc-utils/kill.1.adoc | 2 ++ misc-utils/lastlog2.8.adoc | 8 ++++---- sys-utils/blkpr.8.adoc | 6 +----- sys-utils/setsid.1.adoc | 6 +----- sys-utils/tunelp.8.adoc | 2 ++ text-utils/line.1.adoc | 6 +++++- 8 files changed, 19 insertions(+), 19 deletions(-) commit 22a37929a19a4c0f78cd84acfc9a089ae6fb6350 Author: Benno Schulenberg Date: Mon Apr 14 11:45:31 2025 +0200 losetup,lscpu: (man) add the missing -h/--help and -V/--version options Three years ago, commit 2b2d317242 removed these options from these two man pages but forgot to replace them with the relevant `include`. Signed-off-by: Benno Schulenberg sys-utils/losetup.8.adoc | 2 ++ sys-utils/lscpu.1.adoc | 2 ++ 2 files changed, 4 insertions(+) commit 1737f178fd71db258dd475f90aa21a39d2e79cf3 Author: Benno Schulenberg Date: Mon Apr 14 11:45:30 2025 +0200 agetty,setterm: (man) remove the mistakenly added -h and -V short options Three years ago, commit 2b2d317242 was a little overzealous and replaced also occurrences of --help and --version that were *not* paired with -h and -V: `agetty` does not know -V and uses -h for something else, and `setterm` does not know any short options at all. Signed-off-by: Benno Schulenberg term-utils/agetty.8.adoc | 6 +++++- term-utils/setterm.1.adoc | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) commit e9a52c3be450c832432b5ee01928c29aa4d83282 Author: Benno Schulenberg Date: Mon Apr 14 11:45:29 2025 +0200 docs: fix a few indentation issues That is: add "+" or " +" to keep paragraphs together. Signed-off-by: Benno Schulenberg misc-utils/cal.1.adoc | 1 + sys-utils/flock.1.adoc | 2 +- sys-utils/hwclock.8.adoc | 6 ++++-- sys-utils/setpriv.1.adoc | 1 + 4 files changed, 7 insertions(+), 3 deletions(-) commit 4bda3039ef3d6b95c7c466e52405c3c7b5165a36 Author: Benno Schulenberg Date: Mon Apr 14 11:45:28 2025 +0200 docs: improve and harmonize the description of -H / --list-columns Signed-off-by: Benno Schulenberg lsfd-cmd/lsfd.1.adoc | 3 ++- misc-utils/findmnt.8.adoc | 3 ++- misc-utils/lsblk.8.adoc | 3 ++- misc-utils/lslocks.8.adoc | 3 ++- sys-utils/lsns.8.adoc | 3 ++- 5 files changed, 10 insertions(+), 5 deletions(-) commit 8861898c1ee36c4f2aaa79b9ce625ba7361b2412 Author: Benno Schulenberg Date: Mon Apr 14 11:45:27 2025 +0200 docs: rewrite the description of --bytes, to be clearer The original looked like a plate of spaghetti to me. Signed-off-by: Benno Schulenberg man-common/in-bytes.adoc | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) commit a5965282131f3774a47dae1e3f2a1003b0a210e5 Merge: bbfbd64e3 6feaf1d47 Author: Karel Zak Date: Tue Apr 15 12:48:32 2025 +0200 Merge branch 'meson-fixes' of https://github.com/t-8ch/util-linux * 'meson-fixes' of https://github.com/t-8ch/util-linux: meson: use .to_string() in configuration data check meson: add feature for translated documentation meson: remove tinfo dependency from 'more' commit bbfbd64e3f00c548016c8b8292ff0cb841e681f0 Merge: 995a4e234 e47c6f751 Author: Karel Zak Date: Tue Apr 15 12:47:09 2025 +0200 Merge branch 'fix-2873' of https://github.com/gershnik/util-linux * 'fix-2873' of https://github.com/gershnik/util-linux: libuuid: fix uuid_time on macOS without attribute((alias)) commit 6feaf1d472baadfc7759ea49c81df0437e079f9c Author: Thomas Weißschuh Date: Mon Apr 14 23:07:18 2025 +0200 meson: use .to_string() in configuration data check Newer versions of meson validate the types of comparisions. Explicitly convert to strings. Fixes the following error: meson.build:1875:70: ERROR: The `==` operator of bool does not accept objects of type int (1) Signed-off-by: Thomas Weißschuh meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 188f3af3e8f3c7effbdb4b91994f1b16db4874b5 Author: Thomas Weißschuh Date: Mon Apr 14 23:32:36 2025 +0200 meson: add feature for translated documentation Translating the documentation is slow. Add a feature which can be used to disable this step. Signed-off-by: Thomas Weißschuh meson_options.txt | 2 ++ po-man/meson.build | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) commit 363e48da01956321fb9337c59d78865c97c711a2 Author: Thomas Weißschuh Date: Mon Apr 14 23:19:06 2025 +0200 meson: remove tinfo dependency from 'more' The more utility does not need libtinfo and it is not specified in autotools either. Signed-off-by: Thomas Weißschuh meson.build | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) commit c5850c36e14085cddf8db9e19d447d928fa153d0 Author: Cristian Rodríguez Date: Sun Apr 13 09:22:47 2025 -0400 Do not use strerror on shared libraries Using strerror is not safe in shared libraries as it is unknown what the calling apps may do with the storage behind the scenes. Using %m is ok, except in contexts that need to be as-safe. libblkid/src/verify.c | 8 ++++---- liblastlog2/src/lastlog2.c | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) commit 1f106f63c5c9ab6779621f42c280d1f23792f898 Author: Jakub Wilk Date: Wed Apr 9 19:53:34 2025 +0200 mount: (man) add missing word Signed-off-by: Jakub Wilk sys-utils/mount.8.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 437a271f7108f689d350f1b3d837490d3d283c3c Author: Karel Zak Date: Wed Apr 9 12:15:57 2025 +0200 libmount: (subdir) restrict for real mounts only It's now possible to use, for example, for bind operations, but it does not make sense as you can specify the target with the subdirectory. Signed-off-by: Karel Zak libmount/src/hook_subdir.c | 21 ++++++++++++++++----- sys-utils/mount.8.adoc | 4 +++- 2 files changed, 19 insertions(+), 6 deletions(-) commit 5462fa3435544344727b8644205ae427dfd5fcba Author: Karel Zak Date: Wed Apr 9 11:32:08 2025 +0200 libmount: (subdir) remove unused code The optlist already handles quoted values, so there's no need to do it in the callers. Signed-off-by: Karel Zak libmount/src/hook_subdir.c | 3 --- 1 file changed, 3 deletions(-) commit 19a6212162a68f5b2e867239d4052c488f381946 Author: zt20xx Date: Tue Apr 8 08:49:51 2025 +0800 swapoff: add comments for do_swapoff [kzak@redhat.com: - add the comment to swapoff_by() too] Signed-off-by: Karel Zak sys-utils/swapoff.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) commit 702f6f0178fa74cf66a13813bd40e5c7839cfe6a Author: Karel Zak Date: Wed Apr 9 10:51:59 2025 +0200 swapoff: clean up tag resolution - Rename swapoff_resolve_tag() to resolve_swapfile_tag() and retain only code relevant to swapfiles. - Always call mnt_resolve_*() before resolve_swapfile_tag() to resolve tags/paths on standard block devices. - Call free() for resolve_swapfile_tag() to avoid memory leaks. Signed-off-by: Karel Zak sys-utils/swapoff.c | 34 +++++++++++++++++++++------------- 1 file changed, 21 insertions(+), 13 deletions(-) commit 995a4e2341f699e9eb7f2e2c529e1c8802a61170 Author: Cristian Rodríguez Date: Tue Apr 8 09:41:36 2025 -0400 disk-utils: add attribute nonstring to bfs byte arrays GCC15 requires to annotate such fields as nonstrings or a warning is now issued that they are missing the ending null. disk-utils/mkfs.bfs.c | 4 ++-- include/c.h | 6 ++++++ 2 files changed, 8 insertions(+), 2 deletions(-) commit 5c3d3bb01bd063303a0c4893e5b385b4c10914a2 Merge: f07d0074f 53244dd4e Author: Karel Zak Date: Tue Apr 8 13:41:11 2025 +0200 Merge branch 'PR/Benno-8Apr' of https://github.com/karelzak/util-linux-work * 'PR/Benno-8Apr' of https://github.com/karelzak/util-linux-work: zramctl: (man) mention the required arguments for -p and -r zramctl: restore normal description indentations in the usage text textual: fix a mistruncated message, and fix a typo hwclock: remove two comments about parameters that no longer exist commit f07d0074fd7571bcbb83b16335f425f73d129cb9 Author: Benno Schulenberg Date: Mon Apr 7 17:14:39 2025 +0200 column: (man) fix broken markup, and improve other markup and wordings Since commit aa4efb2030 from five months ago, almost the entire text of the section OPTIONS was underlined / in italics. Correct that. Also improve various other markup and wordings, and unswap the names of --table-column and --table-columns in the first paragraph of OPTIONS. Signed-off-by: Benno Schulenberg text-utils/column.1.adoc | 73 ++++++++++++++++++++++++++++-------------------- 1 file changed, 42 insertions(+), 31 deletions(-) commit 0964bafe5763278499ccb3a0df4595cfcb97a602 Author: Benno Schulenberg Date: Mon Apr 7 17:14:38 2025 +0200 mount: (man) shorten an overlong line, and improve some markup Also, in the synopis mention -F separately to make it more obvious that it applies only to -A, swap two options to make a line more similar to the preceding one, and improve some wording. Signed-off-by: Benno Schulenberg sys-utils/mount.8.adoc | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) commit 29d0eeca66bab90ce6d0eb81730814080b995d99 Author: Benno Schulenberg Date: Mon Apr 7 17:14:37 2025 +0200 mount: (man) fix some indentation issues, and improve a few wordings Signed-off-by: Benno Schulenberg sys-utils/mount.8.adoc | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) commit fe603897ce0f1e2974f66bc22d4f431889dae305 Author: Benno Schulenberg Date: Mon Apr 7 17:14:36 2025 +0200 eject: (man) add the missing SYNOPSIS header Signed-off-by: Benno Schulenberg sys-utils/eject.1.adoc | 2 ++ 1 file changed, 2 insertions(+) commit 15ebd9dc3673862bcac0730b12bbb406722c841e Author: Benno Schulenberg Date: Mon Apr 7 17:14:35 2025 +0200 blkzone: (man) reduce two overblown tables to legible proportions Before version 2.37, before asciidoctor was used, the first three lines of the first table looked like this: start Zone start sector len Zone length in number of sectors wptr Zone write pointer position After the move to asciidoctor, the first three lines of the first table in the generated man page looked like this: ┌────────┬────────────────────────────┐ │ │ │ │start │ Zone start sector │ ├────────┼────────────────────────────┤ │ │ │ │len │ Zone length in number of │ │ │ sectors │ ├────────┼────────────────────────────┤ │ │ │ │wptr │ Zone write pointer │ │ │ position │ ├────────┼────────────────────────────┤ Three to four screen lines for just one line of information! Reduce the tables to sane proportions again by simply using blocks of preformatted text. (The substition of xN for x? is needed because somehow the ? in the indented text is a special character in groff.) Signed-off-by: Benno Schulenberg sys-utils/blkzone.8.adoc | 44 +++++++++++++++++++++----------------------- 1 file changed, 21 insertions(+), 23 deletions(-) commit bae2260168174941454f6b25772848beed0d3207 Author: Benno Schulenberg Date: Mon Apr 7 17:14:34 2025 +0200 hexdump: (man) normalize the synopsis, and shrink a list and two tables Simply use blocks of preformatted text for the tables, as asciidoctor inflates true tables to overblown proportions on a man page. Also, correct the code for DEL from FF to 7F. Signed-off-by: Benno Schulenberg text-utils/hexdump.1.adoc | 55 +++++++++++++++++++++-------------------------- 1 file changed, 25 insertions(+), 30 deletions(-) commit f0921f0ed4a9980e864b2560e3d56fb5a682f078 Author: Benno Schulenberg Date: Mon Apr 7 17:14:33 2025 +0200 choom: (man) add the missing SYNOPSIS section header, and improve wording Signed-off-by: Benno Schulenberg sys-utils/choom.1.adoc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) commit 53244dd4e14082a849ac177174635efa57c2256a Author: Benno Schulenberg Date: Sun Apr 6 17:21:47 2025 +0200 zramctl: (man) mention the required arguments for -p and -r Also, sort the options strictly alphabetically ("r" before "raw"). Signed-off-by: Benno Schulenberg sys-utils/zramctl.8.adoc | 15 +++++++++------ sys-utils/zramctl.c | 4 ++-- 2 files changed, 11 insertions(+), 8 deletions(-) commit 945d43873bc3864969737cf39ed5ce62515b9ae1 Author: Benno Schulenberg Date: Sun Apr 6 17:21:46 2025 +0200 zramctl: restore normal description indentations in the usage text Commit 19c12e63b1 from four months ago changed the indentation of *all* the option descriptions in the usage text. That was the wrong thing to do, as it invalidates all existing translations for no good reason. When one of the options is (or needs to become) overlong, then the thing to do is: to put the description of this option on the next line. So, restore the indentation of the descriptions to what they were before commit 19c12e63b1, and wrap the description of -p. Also, make the description of -b fit within 80 columns, and sort the options better: alphabetically, but single letter before long option. CC: LiviaMedeiros Signed-off-by: Benno Schulenberg sys-utils/zramctl.c | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) commit 8a765c94cabb6dede9e698ef44c69050d2f1ced5 Author: Benno Schulenberg Date: Sun Apr 6 17:21:45 2025 +0200 textual: fix a mistruncated message, and fix a typo The phrase "in human-readable form" was chosen rather than "in human-readable format" because it's shorter and lets the line fit *just* within 80 columns. Reported-by: Petr Písař Signed-off-by: Benno Schulenberg sys-utils/lsipc.c | 2 +- sys-utils/setpriv.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 266911ea3a9cce0b5d32eb246b63a87796b6b3d4 Author: Benno Schulenberg Date: Sun Apr 6 17:21:44 2025 +0200 hwclock: remove two comments about parameters that no longer exist Commit 336f7c5f68 from nine years ago removed the 'universal' and 'testing' parameters of do_adjustment() but forgot to update the leading comment. Signed-off-by: Benno Schulenberg sys-utils/hwclock.c | 5 ----- 1 file changed, 5 deletions(-) commit 6e62a2ddc1fc6eeccb0ae96056eb11f064eea161 Merge: 627870728 b77025b6e Author: Karel Zak Date: Tue Apr 8 10:58:14 2025 +0200 Merge branch 'fallthrough' of https://github.com/teknoraver/util-linux * 'fallthrough' of https://github.com/teknoraver/util-linux: Use the 'fallthrough' attribute move XXH_FALLTHROUGH into a generic include file Fix XXH_HAS_C_ATTRIBUTE check commit 627870728d3b52afa5bc03ecbc793cdc558912ee Merge: 000913f47 c4a24f530 Author: Karel Zak Date: Tue Apr 8 10:50:11 2025 +0200 Merge branch 'PR/treewide-fix-optarg' of https://github.com/karelzak/util-linux-work * 'PR/treewide-fix-optarg' of https://github.com/karelzak/util-linux-work: treewide: fix optional arguments usage commit 000913f4706e3525b602c66c186510db8cbb17d8 Merge: 10ee66ed1 0ecaef693 Author: Karel Zak Date: Tue Apr 8 10:49:40 2025 +0200 Merge branch 'PR/findmnt-fix-k' of https://github.com/karelzak/util-linux-work * 'PR/findmnt-fix-k' of https://github.com/karelzak/util-linux-work: findmnt: fix -k option parsing regression commit b77025b6e78efbdd4cc36c5e65d3a8d59a805e63 Author: Matteo Croce Date: Thu Mar 27 20:49:10 2025 +0100 Use the 'fallthrough' attribute C23[1] and CPP17[2] introduced the 'fallthrough' attribute to let the compiler know that we're intentionally falling through a case statement. This suppress a warning with new compilers when doing an implicit fallthrough. [1] https://en.cppreference.com/w/c/language/attributes/fallthrough [2] https://en.cppreference.com/w/cpp/language/attributes/fallthrough disk-utils/cfdisk.c | 8 ++++---- disk-utils/fdisk-menu.c | 2 +- disk-utils/mkfs.minix.c | 2 +- disk-utils/sfdisk.c | 6 +++--- lib/pty-session.c | 6 +++--- libblkid/src/topology/md.c | 4 ++-- libmount/src/context_mount.c | 2 +- libsmartcols/src/calculate.c | 6 +++--- libsmartcols/src/print.c | 2 +- login-utils/last.c | 2 +- login-utils/lslogins.c | 4 ++-- login-utils/su-common.c | 2 +- login-utils/sulogin.c | 8 ++++---- lsfd-cmd/bdev.c | 2 +- lsfd-cmd/cdev.c | 2 +- lsfd-cmd/file.c | 4 ++-- lsfd-cmd/sock-xinfo.c | 4 ++-- lsfd-cmd/sock.c | 2 +- lsfd-cmd/unkn.c | 2 +- misc-utils/cal.c | 4 ++-- misc-utils/fincore.c | 2 +- misc-utils/findmnt.c | 6 +++--- misc-utils/lsblk.c | 2 +- misc-utils/lslocks.c | 2 +- schedutils/uclampset.c | 2 +- sys-utils/dmesg.c | 2 +- sys-utils/flock.c | 2 +- sys-utils/ipcrm.c | 6 +++--- sys-utils/lsipc.c | 2 +- sys-utils/lsmem.c | 2 +- term-utils/agetty.c | 6 +++--- term-utils/script.c | 4 ++-- text-utils/hexdump-parse.c | 2 +- text-utils/more.c | 8 ++++---- text-utils/pg.c | 4 ++-- text-utils/ul.c | 4 ++-- 36 files changed, 65 insertions(+), 65 deletions(-) commit 1a3cbd3c0f7c84f977b624a6240d02ce741fc747 Author: Matteo Croce Date: Thu Apr 3 03:09:47 2025 +0200 move XXH_FALLTHROUGH into a generic include file Move XXH_FALLTHROUGH in c.h, and rename it to FALLTHROUGH include/c.h | 33 +++++++++++++++++++++++++++++++++ include/xxhash.h | 35 +++-------------------------------- 2 files changed, 36 insertions(+), 32 deletions(-) commit 0d205e5cf327e4b5d6946ca4a09ae65d2c4c194e Author: easyaspi314 (Devin) Date: Mon Dec 13 15:08:50 2021 -0500 Fix XXH_HAS_C_ATTRIBUTE check include/xxhash.h | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) commit c4a24f5301ec9779a0492dd110824c2ce813f3eb Author: Karel Zak Date: Mon Apr 7 13:49:43 2025 +0200 treewide: fix optional arguments usage In some parts of the code, the optional argument handling is missing for cases where the argument starts with '='. This is particularly important for short options with optional arguments, as suggested by our man pages. The libc getopt_long() handles this for long options, but for short options, it's our responsibility. Note that some argument parsing functions (mostly colormode_or_err()) already implement this, as they are usually used with optional arguments. Signed-off-by: Karel Zak lsfd-cmd/lsfd.c | 2 ++ misc-utils/enosys.c | 2 ++ misc-utils/uuidd.c | 6 ++++-- misc-utils/wipefs.c | 2 ++ sys-utils/ipcrm.c | 2 ++ sys-utils/nsenter.c | 14 ++++++++++---- 6 files changed, 22 insertions(+), 6 deletions(-) commit 10ee66ed1b08586bde42582e34355418eef33ef5 Author: Thomas Devoogdt Date: Mon Apr 7 14:20:12 2025 +0200 namespace.h: fix compilation on Linux < 4.10 sys-utils/lsns.c: In function ‘add_namespace_from_sock’: sys-utils/lsns.c:580:19: error: ‘SIOCGSKNS’ undeclared (first use in this function) nsfd = ioctl(sk, SIOCGSKNS); ^~~~~~~~~ SIOCGSKNS was added in https://github.com/torvalds/linux/commit/c62cce2caee558e18aa05c01c2fd3b40f07174f2. Fixes: https://github.com/util-linux/util-linux/issues/3502 Signed-off-by: Thomas Devoogdt include/namespace.h | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) commit 8aae9e2d2d4bb6392a62857881a82d59380c59cf Merge: 281f0467e 3f3bb6f91 Author: Karel Zak Date: Mon Apr 7 14:11:42 2025 +0200 Merge branch 'fix/leading_colon_run_shell' of https://github.com/cgoesche/util-linux-fork * 'fix/leading_colon_run_shell' of https://github.com/cgoesche/util-linux-fork: more: fix broken ':!command' command key commit 281f0467e211953e1c25d905f9d215ee6daf2114 Merge: b5cdfac8f b6f936298 Author: Karel Zak Date: Mon Apr 7 14:11:05 2025 +0200 Merge branch 'fix/implicit_prev_shell_command' of https://github.com/cgoesche/util-linux-fork * 'fix/implicit_prev_shell_command' of https://github.com/cgoesche/util-linux-fork: more: fix implicit previous shell_line execution #3508 commit b5cdfac8f179a78b8380f754c2b71771a26fb1de Merge: a2bd6f82f f94cf01b8 Author: Karel Zak Date: Mon Apr 7 14:09:57 2025 +0200 Merge branch 'treewide--use-strtopid_or_err' of https://github.com/masatake/util-linux * 'treewide--use-strtopid_or_err' of https://github.com/masatake/util-linux: treewide: use strtopid_or_err() commit a2bd6f82f7df090c97c47f6509b197aa32204504 Merge: 3fc134e55 717196809 Author: Karel Zak Date: Mon Apr 7 14:03:07 2025 +0200 Merge branch 'PR/coverity' of https://github.com/karelzak/util-linux-work * 'PR/coverity' of https://github.com/karelzak/util-linux-work: fdisk: fix possible memory leak fdformat: use size_t and ssize_t cfdisk: fix memory leak and possible NULL dereference [gcc-analyzer] commit 3fc134e559272c0e1f497d9529e28015a56f5d0a Merge: 4b63ef9c6 d2fce960f Author: Karel Zak Date: Mon Apr 7 14:02:45 2025 +0200 Merge branch 'feat/add_secure_mode' of https://github.com/cgoesche/util-linux-fork * 'feat/add_secure_mode' of https://github.com/cgoesche/util-linux-fork: more: Add MORESECURE and PAGERSECURE environment variables #3503 commit 0ecaef693ea60aab709e79dd4a8eb2865ec08967 Author: Karel Zak Date: Mon Apr 7 12:35:02 2025 +0200 findmnt: fix -k option parsing regression It's a really bad idea to change any existing short option to support optional arguments. Fixes: https://github.com/util-linux/util-linux/issues/3512 References: 841d15e5d13dd0cc56e450c8dcc592211d66be27 Signed-off-by: Karel Zak misc-utils/findmnt.8.adoc | 2 +- misc-utils/findmnt.c | 13 +++++++++---- 2 files changed, 10 insertions(+), 5 deletions(-) commit 3f3bb6f9103daaf7a8f47ebe57cbe90bac852e6e Author: cgoesche Date: Sat Apr 5 01:43:04 2025 -0400 more: fix broken ':!command' command key Addresses: #3509 Signed-off-by: Christian Goeschel Ndjomouo text-utils/more.c | 3 +++ 1 file changed, 3 insertions(+) commit b6f9362988dbe5427d52b31ac3add37a7ddb6b12 Author: cgoesche Date: Sat Apr 5 01:29:35 2025 -0400 more: fix implicit previous shell_line execution #3508 run_shell() will implicitly execute the previous ctl->shell_line not only if the function was indirectly invoked by the '.' command but also by a subsequent '!' command. Addresses: #3508 Signed-off-by: Christian Goeschel Ndjomouo text-utils/more.c | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) commit f94cf01b8dcc1ed08bad0c00167736e1304f5501 Author: Masatake YAMATO Date: Fri Apr 4 09:27:10 2025 +0900 treewide: use strtopid_or_err() Addresses: https://github.com/util-linux/util-linux/pull/3486 Suggested-by: Thomas Weißschuh Signed-off-by: Masatake YAMATO misc-utils/logger.c | 2 +- misc-utils/lslocks.c | 3 ++- schedutils/chrt.c | 1 + schedutils/taskset.c | 4 ++-- schedutils/uclampset.c | 2 +- sys-utils/choom.c | 2 +- sys-utils/lsns.c | 2 +- sys-utils/prlimit.c | 2 +- 8 files changed, 10 insertions(+), 8 deletions(-) commit d2fce960f9cac7407efdf0b08224effdaf0da78f Author: Christian Goeschel Ndjomouo Date: Thu Apr 3 00:38:29 2025 -0400 more: Add MORESECURE and PAGERSECURE environment variables #3503 Add MORESECURE and PAGERSECURE environment variables to run 'more' in secure mode, which will effectively disable the _!_ and _v_ commands. This helps to prevent unprivileged users from running arbitrary shell commands or file manipulations. Addresses: #3503 Signed-off-by: Christian Goeschel Ndjomouo text-utils/more.1.adoc | 18 ++++++++++++++++++ text-utils/more.c | 21 ++++++++++++++++++--- 2 files changed, 36 insertions(+), 3 deletions(-) commit 71719680968c86a09ad0ba76339447f18996610b Author: Karel Zak Date: Tue Mar 25 12:44:13 2025 +0100 fdisk: fix possible memory leak Signed-off-by: Karel Zak disk-utils/fdisk.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) commit 310806a25f1da9e1e6819c57d2e358bb439ed56d Author: Karel Zak Date: Tue Mar 25 12:23:35 2025 +0100 fdformat: use size_t and ssize_t Signed-off-by: Karel Zak disk-utils/fdformat.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) commit 33ca468b67d34dead8fb8b41dc9f328971e5fe70 Author: Karel Zak Date: Tue Mar 25 12:14:14 2025 +0100 cfdisk: fix memory leak and possible NULL dereference [gcc-analyzer] Signed-off-by: Karel Zak disk-utils/cfdisk.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit 4b63ef9c6c9a6fe3d0381ba97af9ad6a738fd9c8 Merge: c8dc60f9f 6cc43018d Author: Karel Zak Date: Thu Apr 3 14:07:35 2025 +0200 Merge branch 'PR/Benno-31Mar' of https://github.com/karelzak/util-linux-work * 'PR/Benno-31Mar' of https://github.com/karelzak/util-linux-work: tests: update coresched tests coresched: reduce excessive whitespace and verbosity in usage text lsblk: (man) remove the incorrect spaces between the arguments of --ct hardlink: fix typoed semicolon to colon in error message findmnt: (man) remove duplicated option, and correct a description irqtop: improve several more option descriptions, and align them all irqtop: improve the description of --batch, and align it with others last: don't use a tab character in the --help usage text uclampset: simplify the synopsis in the --help usage text enosys: add the missing arguments of -s and -i to the usage text commit c8dc60f9ff0a8aa19b315d4c49e784689af18dbc Author: Karel Zak Date: Thu Apr 3 14:05:09 2025 +0200 setarch: use strtopid_or_err() Addresses: https://github.com/util-linux/util-linux/pull/3486 Signed-off-by: Karel Zak sys-utils/setarch.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 0a6c9a71e9510de2ba06ad1ece347650c18b124d Merge: 2c6ce1240 107293a68 Author: Karel Zak Date: Thu Apr 3 10:00:16 2025 +0200 Merge branch 'PR/fix-strcasecmp' of https://github.com/karelzak/util-linux-work * 'PR/fix-strcasecmp' of https://github.com/karelzak/util-linux-work: treewide: avoid strcasecmp() for ASCII-only strings fdisk,partx: avoid strcasecmp() for ASCII-only strings libmount: avoid strcasecmp() for ASCII-only strings lsblk: avoid strcasecmp() for ASCII-only strings libfdisk: avoid strcasecmp() for ASCII-only strings libblkid: avoid strcasecmp() for ASCII-only strings include/cctype: fix string comparison commit 6cc43018dd8b6c1506c1b631c25392695c66ca28 Author: Karel Zak Date: Wed Apr 2 13:17:07 2025 +0200 tests: update coresched tests References: fe62e0a1109e2a108d9a8868211875811b1935b3 Signed-off-by: Karel Zak tests/expected/schedutils/coresched-get-cookie-own-pid | 2 +- tests/expected/schedutils/coresched-get-cookie-parent-pid | 2 +- tests/ts/schedutils/coresched | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) commit fe62e0a1109e2a108d9a8868211875811b1935b3 Author: Benno Schulenberg Date: Mon Mar 31 11:44:42 2025 +0200 coresched: reduce excessive whitespace and verbosity in usage text Also, use semicolons instead of periods in option descriptions. And consistently use an uppercased "PID" in feedback messages. CC: Phil Auld CC: Thijs Raymakers Signed-off-by: Benno Schulenberg schedutils/coresched.c | 33 +++++++++++++-------------------- 1 file changed, 13 insertions(+), 20 deletions(-) commit 5ffaa17f854abcdb9110d5c7d84436e0c059f7da Author: Benno Schulenberg Date: Mon Mar 31 11:44:41 2025 +0200 lsblk: (man) remove the incorrect spaces between the arguments of --ct Also, unabbreviate some needless abbreviations, and improve some wordings and markup. Signed-off-by: Benno Schulenberg misc-utils/lsblk.8.adoc | 52 +++++++++++++++++++++++++++---------------------- 1 file changed, 29 insertions(+), 23 deletions(-) commit d104dea3dded8e7b3078b1b1b27cc40f1cb3b6a1 Author: Benno Schulenberg Date: Mon Mar 31 11:44:40 2025 +0200 hardlink: fix typoed semicolon to colon in error message Signed-off-by: Benno Schulenberg misc-utils/hardlink.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 5d131328a7b4a58409038f9627d525f8320b3dcf Author: Benno Schulenberg Date: Mon Mar 31 11:44:39 2025 +0200 findmnt: (man) remove duplicated option, and correct a description The page listed both '--shadowed' and '--shadow', while the description of '--hyperlink' duplicated the possible values of the _mode_ argument and mistakenly spoke of _when_. Also, sort the options alphabetically and fix two bits of markup. Signed-off-by: Benno Schulenberg misc-utils/findmnt.8.adoc | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) commit ce2c1c20f7b49d7df5ea076c0d36f6693aa3484b Author: Benno Schulenberg Date: Mon Mar 31 11:44:38 2025 +0200 irqtop: improve several more option descriptions, and align them all Keep at least two spaces between option+argument and its description, while making sure not to go above 80 columns per line. Also, improve the docstring (there is no need to mention that irqtop is a utility) and remove the ugly Q from the list of interactive keys. CC: Joe Jin CC: Zhenwei Pi Signed-off-by: Benno Schulenberg sys-utils/irqtop.1.adoc | 4 ++-- sys-utils/irqtop.c | 26 +++++++++++++------------- 2 files changed, 15 insertions(+), 15 deletions(-) commit a85d9da35fb78e5be01d381cc172c284f2b64bd1 Author: Benno Schulenberg Date: Mon Mar 31 11:44:37 2025 +0200 irqtop: improve the description of --batch, and align it with others Also improve the description of --delay and tweak the one of --json, and align both descriptions with the preceding ones. CC: Joe Jin Signed-off-by: Benno Schulenberg sys-utils/irqtop.1.adoc | 7 ++++--- sys-utils/irqtop.c | 6 +++--- 2 files changed, 7 insertions(+), 6 deletions(-) commit 25f43bcc82390a53ff0c8ec49730f44708f05852 Author: Benno Schulenberg Date: Mon Mar 31 11:44:36 2025 +0200 last: don't use a tab character in the --help usage text Also, sort options -p and --time-format alphabetically, like in the man page. Signed-off-by: Benno Schulenberg login-utils/last.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 6e94590107d67b1f01586590b49848b820c4a8c2 Author: Benno Schulenberg Date: Mon Mar 31 11:44:35 2025 +0200 uclampset: simplify the synopsis in the --help usage text The synopsis cannot express all possible forms of the command and still stay readable, so do not even try. Giving one, single synopsis is far clearer. Also, unabbreviate two words in the option descriptions. Also, improve the markup and the wording in the man page. Signed-off-by: Benno Schulenberg schedutils/uclampset.1.adoc | 4 ++-- schedutils/uclampset.c | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) commit b8cf5570f98ecba563ae57575e96745676264758 Author: Benno Schulenberg Date: Mon Mar 31 11:44:34 2025 +0200 enosys: add the missing arguments of -s and -i to the usage text Also, add a docstring, drop the redundant double dash from the synopsis, add the missing -m option, and add a missing word to an error message. CC: Thomas Weißschuh Signed-off-by: Benno Schulenberg misc-utils/enosys.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) commit 107293a68206f24e531fd906e8114b578911bb7a Author: Karel Zak Date: Tue Apr 1 17:45:01 2025 +0200 treewide: avoid strcasecmp() for ASCII-only strings Use cctype.h for locale-independent string comparison and to avoid tricky string conversions like in tr_TR locales. Fixes: https://github.com/util-linux/util-linux/issues/3490 Signed-off-by: Karel Zak lib/blkdev.c | 7 ++++--- lib/colors.c | 3 ++- lib/logindefs.c | 7 ++++--- lib/match.c | 5 +++-- lib/sysfs.c | 3 ++- libsmartcols/src/filter-param.c | 5 +++-- login-utils/chfn.c | 3 ++- login-utils/lslogins.c | 3 ++- lsfd-cmd/lsfd.c | 3 ++- misc-utils/fincore.c | 3 ++- misc-utils/findmnt.c | 11 ++++++----- misc-utils/logger.c | 3 ++- misc-utils/lsclocks.c | 3 ++- misc-utils/lslocks.c | 3 ++- misc-utils/uuidparse.c | 3 ++- misc-utils/wipefs.c | 3 ++- schedutils/ionice.c | 3 ++- sys-utils/chmem.c | 7 ++++--- sys-utils/dmesg.c | 5 +++-- sys-utils/irq-common.c | 11 ++++++----- sys-utils/ldattach.c | 3 ++- sys-utils/losetup.c | 3 ++- sys-utils/lscpu-riscv.c | 3 ++- sys-utils/lscpu.c | 5 +++-- sys-utils/lsipc.c | 3 ++- sys-utils/lsmem.c | 27 +++++++++++++++------------ sys-utils/lsns.c | 3 ++- sys-utils/prlimit.c | 3 ++- sys-utils/rfkill.c | 3 ++- sys-utils/swapon.c | 3 ++- sys-utils/wdctl.c | 5 +++-- sys-utils/zramctl.c | 3 ++- term-utils/script.c | 5 +++-- tests/helpers/test_mkfds.c | 7 ++++--- 34 files changed, 103 insertions(+), 67 deletions(-) commit 7efdcd75f041fa1cb9a7c05e22dea3567d48bf9e Author: Karel Zak Date: Tue Apr 1 17:45:01 2025 +0200 fdisk,partx: avoid strcasecmp() for ASCII-only strings Use cctype.h for locale-independent string comparison and to avoid tricky string conversions like in tr_TR locales. Signed-off-by: Karel Zak disk-utils/cfdisk.c | 3 ++- disk-utils/fdisk-list.h | 4 +++- disk-utils/partx.c | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) commit ea694f8b91b82474c018dac2250b03cb00685b26 Author: Karel Zak Date: Tue Apr 1 17:45:01 2025 +0200 libmount: avoid strcasecmp() for ASCII-only strings Use cctype.h for locale-independent string comparison and to avoid tricky string conversions like in tr_TR locales. Signed-off-by: Karel Zak libmount/src/tab.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) commit b5ae9e8d0234738f381c56aa797aeba81a05d587 Author: Karel Zak Date: Tue Apr 1 17:45:01 2025 +0200 lsblk: avoid strcasecmp() for ASCII-only strings Use cctype.h for locale-independent string comparison and to avoid tricky string conversions like in tr_TR locales. Fixes: https://github.com/util-linux/util-linux/issues/3490 Signed-off-by: Karel Zak misc-utils/lsblk-properties.c | 11 ++++++----- misc-utils/lsblk.c | 7 ++++--- 2 files changed, 10 insertions(+), 8 deletions(-) commit 8ec0c305e9f6ab904119201a13873faedb30da57 Author: Karel Zak Date: Tue Apr 1 17:45:01 2025 +0200 libfdisk: avoid strcasecmp() for ASCII-only strings Use cctype.h for locale-independent string comparison and to avoid tricky string conversions like in tr_TR locales. Signed-off-by: Karel Zak libfdisk/src/context.c | 9 +++++---- libfdisk/src/label.c | 3 ++- libfdisk/src/parttype.c | 3 ++- libfdisk/src/script.c | 21 +++++++++++---------- 4 files changed, 20 insertions(+), 16 deletions(-) commit 7eb663503c77d739f2cc80d78ee9d380b11b6eb9 Author: Karel Zak Date: Tue Apr 1 17:45:01 2025 +0200 libblkid: avoid strcasecmp() for ASCII-only strings Use cctype.h for locale-independent string comparison and to avoid tricky string conversions like in tr_TR locales. Signed-off-by: Karel Zak libblkid/src/config.c | 3 ++- libblkid/src/partitions/partitions.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) commit 259157b0c1a00806ff75188325e40ba10adf12ce Author: Karel Zak Date: Wed Apr 2 11:00:47 2025 +0200 include/cctype: fix string comparison Reimplement c_strcasecmp() and c_strncasecmp() to be libc compatible and fix c_strncasecmp() to avoid \0 misinterpretation. The original implementation was pretty stupid (sorry). Signed-off-by: Karel Zak include/cctype.h | 55 +++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 37 insertions(+), 18 deletions(-) commit 2c6ce1240f118a2d00ad93060da409c3995b7f67 Author: Karel Zak Date: Tue Apr 1 15:54:07 2025 +0200 mkfs.bfs: fix memory leaks and weak code - use size_t to store strlen() result - init superblock with the default volume and fsname - don't use strdup(), it's unnecessary as getopt_long() does not modify arguments - don't use memcpy() as we need to check string sizes - restrict verbose output 6 bytes Addresses: https://github.com/util-linux/util-linux/pull/3488 Signed-off-by: Karel Zak disk-utils/mkfs.bfs.c | 34 ++++++++++++++++++++++------------ 1 file changed, 22 insertions(+), 12 deletions(-) commit d2dadb78081989e1750423962eaf0aa79f222cc5 Author: Karel Zak Date: Tue Feb 18 17:55:36 2025 +0100 tests: mark lsns/filer as TS_KNOWN_FAIL Let's make the test more robust for stable/ branch. Addresses: https://github.com/util-linux/util-linux/pull/3205 Signed-off-by: Karel Zak (cherry picked from commit f589580816220bd70ec5970b41006e1adc82bcf7) tests/ts/lsns/filter | 3 +++ 1 file changed, 3 insertions(+) commit e8e30931ba01efd4bf1ea7e2cb7f0ab954b54265 Merge: 32c359ebf e6446e135 Author: Karel Zak Date: Tue Apr 1 15:06:54 2025 +0200 Merge branch 'setarch--show-pid' of https://github.com/masatake/util-linux * 'setarch--show-pid' of https://github.com/masatake/util-linux: setarch: add -p/--pid option showing the personality of specified process procfs: add a helper function to access /proc/$pid/personality bash-completion: (setarch) show some options as the 1st arg commit 32c359ebf2cc7fa0385f17def0f8b8709dab2da1 Merge: b7be74242 0da7e8201 Author: Karel Zak Date: Tue Apr 1 14:59:24 2025 +0200 Merge branch 'lsfd--bugfix-af-packet' of https://github.com/masatake/util-linux * 'lsfd--bugfix-af-packet' of https://github.com/masatake/util-linux: lsfd: (bug fix) scan the protocol field of /proc/net/packet as a hex number tests: (test_mkfds::mapped-packet-socket) add a new parameter, protocol lsfd: fix the description for PACKET.PROTOCOL column commit b7be742428563ab3efd2670984554d6dd5901488 Merge: 87599f747 7d181e8f1 Author: Karel Zak Date: Tue Apr 1 14:43:05 2025 +0200 Merge branch 'master' of https://github.com/pls-no-hack/util-linux * 'master' of https://github.com/pls-no-hack/util-linux: Fix typo in blkdiscard docs commit 87599f7472585ff2d156207d6735bb64dbb329df Merge: c62ed3d58 bdc723af4 Author: Karel Zak Date: Tue Apr 1 14:40:23 2025 +0200 Merge branch 'remove-list-head-macro' of https://github.com/masatake/util-linux * 'remove-list-head-macro' of https://github.com/masatake/util-linux: include/list,lsfd: remove LIST_HEAD macro again commit c62ed3d58602fd29fe12085f7caf03761ed91b81 Author: Karel Zak Date: Tue Apr 1 14:36:36 2025 +0200 lsns: enhance compilation without USE_NS_GET_API - Move add_namespace_for_nsfd() declaration to the #ifdef block - Replace get_netnsid_for_fd() with inline code as it's used only once References: 2ced43400f35f7bd45b29364e04166a63a06e16a Signed-off-by: Karel Zak sys-utils/lsns.c | 32 ++++++++++---------------------- 1 file changed, 10 insertions(+), 22 deletions(-) commit a5cc4014d3883c4c628a3df7dd6372a9047bccef Merge: 477752620 2ced43400 Author: Karel Zak Date: Tue Apr 1 14:26:44 2025 +0200 Merge branch 'bugfix/undefined-reference-add_namespace_for_nsfd' of https://github.com/ThomasDevoogdt/util-linux * 'bugfix/undefined-reference-add_namespace_for_nsfd' of https://github.com/ThomasDevoogdt/util-linux: lsns: fix undefined reference to add_namespace_for_nsfd #3483 commit 0da7e8201aa7b9b2c5d0e901c0ccfd6f3bdc54d3 Author: Masatake YAMATO Date: Mon Jan 6 03:30:25 2025 +0900 lsfd: (bug fix) scan the protocol field of /proc/net/packet as a hex number Signed-off-by: Masatake YAMATO lsfd-cmd/sock-xinfo.c | 2 +- tests/expected/lsfd/mkfds-mapped-packet-socket | 4 ++-- tests/ts/lsfd/mkfds-mapped-packet-socket | 3 ++- 3 files changed, 5 insertions(+), 4 deletions(-) commit a6584a456835bbef703d7aae1f51d4e07177f8cb Author: Masatake YAMATO Date: Mon Jan 6 03:49:46 2025 +0900 tests: (test_mkfds::mapped-packet-socket) add a new parameter, protocol Signed-off-by: Masatake YAMATO tests/helpers/test_mkfds.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) commit df3b38fab56001537364302479b33cb104ef7411 Author: Masatake YAMATO Date: Mon Jan 6 02:55:19 2025 +0900 lsfd: fix the description for PACKET.PROTOCOL column Signed-off-by: Masatake YAMATO lsfd-cmd/lsfd.1.adoc | 2 +- lsfd-cmd/lsfd.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 7d181e8f1ecdeca764b62f1daf0bb13cec349e7e Author: pls-no-hack <107148611+pls-no-hack@users.noreply.github.com> Date: Fri Mar 28 13:52:49 2025 +0000 Fix typo in blkdiscard docs sys-utils/blkdiscard.8.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit e6446e135b010914644821c17f401670c5c3dce6 Author: Masatake YAMATO Date: Wed Mar 26 04:49:02 2025 +0900 setarch: add -p/--pid option showing the personality of specified process Signed-off-by: Masatake YAMATO bash-completion/setarch | 19 +++++++++ sys-utils/setarch.8.adoc | 9 +++++ sys-utils/setarch.c | 51 +++++++++++++++++++++++- tests/expected/setarch/pid-without-show | 1 + tests/expected/setarch/pid-without-show.err | 1 + tests/expected/setarch/show-with-pid | 1 + tests/ts/setarch/pid-without-show | 31 +++++++++++++++ tests/ts/setarch/show-with-pid | 60 +++++++++++++++++++++++++++++ 8 files changed, 171 insertions(+), 2 deletions(-) commit 3310fc880ee8d3fa79d928199bbae739d12041e6 Author: Masatake YAMATO Date: Wed Mar 26 04:44:14 2025 +0900 procfs: add a helper function to access /proc/$pid/personality Signed-off-by: Masatake YAMATO include/procfs.h | 1 + lib/procfs.c | 5 +++++ 2 files changed, 6 insertions(+) commit 4dd0c74c2fd4a795990195ef67dc314d8e1bebb4 Author: Masatake YAMATO Date: Fri Mar 28 05:41:47 2025 +0900 bash-completion: (setarch) show some options as the 1st arg Signed-off-by: Masatake YAMATO bash-completion/setarch | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) commit 477752620c9826ce9b568045f3184d04464ff67e Author: Karel Zak Date: Thu Mar 27 10:58:24 2025 +0100 more: improve help readability The internal help can be printed within the current content. In this case, it's hard to see where the help starts. Add a separator to make it easier to read. Signed-off-by: Karel Zak text-utils/more.c | 1 + 1 file changed, 1 insertion(+) commit ed0efcb48a0ddf12ec2205e9c4324b33e348fcfa Author: Benno Schulenberg Date: Tue Mar 25 11:43:05 2025 +0100 ipcs: align the first group of options with later ones in the usage text Signed-off-by: Benno Schulenberg sys-utils/ipcs.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit b026dcc3b46a0f755a6a144c571cc57ea43a5307 Author: Benno Schulenberg Date: Tue Mar 25 11:43:04 2025 +0100 mkfs.cramfs: (man) mark arguments of -N and -l in bold, not italics Those possible arguments are literal values, not placeholder words. Also, improve the description of option -l. Signed-off-by: Benno Schulenberg disk-utils/mkfs.cramfs.8.adoc | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) commit 593bd690d5f3faaa4860036fcf9c245efbe9967c Author: Benno Schulenberg Date: Tue Mar 25 11:43:03 2025 +0100 mkfs.cramfs: vertically align the option descriptions of the usage text And trim unneeded whitespace. Signed-off-by: Benno Schulenberg disk-utils/mkfs.cramfs.c | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) commit 6d9b61a40e1d47176cf11366826a0dee93f2d0e0 Author: Benno Schulenberg Date: Tue Mar 25 11:43:02 2025 +0100 mkfs.cramfs: reduce the synopsis to the standard, succinct form The old synopsis was 1) incomplete (mentioning -h and -v, but not -V and -E and -z, for example), and 2) overlong, being wider than 80 columns. So, change the synposis to what most other utilities nowadays use: " [options] ..." -- this makes it much clearer what the two required arguments are. Also, reshuffle the descriptions of the two arguments, to not hide them among the options. And remove the description of option -s, as listing an option that does nothing is not helpful. Signed-off-by: Benno Schulenberg disk-utils/mkfs.cramfs.c | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) commit 3a8ba45c2559ffa219e0fd61d827a6061352c8e6 Author: Benno Schulenberg Date: Tue Mar 25 11:43:01 2025 +0100 swapon: improve a translator hint, and remove a pointless one The reference to "each entry below" made no sense, as that second translator hint is not before a gettextized message and therefore did not make it into the POT file. Gettextizing that message is not useful as 1) there is nothing to translate, and 2) allowing the translators to fiddle with the tabs is too complicated, and 3) the --summary output is deprecated anyway. Signed-off-by: Benno Schulenberg sys-utils/swapon.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit e27ee134279d3e27495e24330b331ea0ab8bebaa Author: Benno Schulenberg Date: Tue Mar 25 11:43:00 2025 +0100 fstrim: mark only the mountpoint as placeholder, not options -A and -a Also, write "mountpoint" as one word here, because it's clearer. Signed-off-by: Benno Schulenberg sys-utils/fstrim.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit f5362d25dfebd6a198268bb539cca7c1c7f937aa Author: Benno Schulenberg Date: Tue Mar 25 11:42:59 2025 +0100 chmem: (man) add missing end-of-bold marker, and add missing OR bar Also, use "EXAMPLES", in the plural, as there are four examples. Signed-off-by: Benno Schulenberg sys-utils/chmem.8.adoc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit 48675a7442000405910bec9e6a68305e4a67a93c Author: Benno Schulenberg Date: Tue Mar 25 11:42:58 2025 +0100 chmem: print warnings about failures always (not only with --verbose) This makes the handling of errors the same as some 90 lines down. Signed-off-by: Benno Schulenberg sys-utils/chmem.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit b3c7bbffddade43cc355f22f139c51ab819fdc08 Author: Benno Schulenberg Date: Tue Mar 25 11:42:57 2025 +0100 ipcutils, lsipc: unabbreviate two words in some error messages Signed-off-by: Benno Schulenberg sys-utils/ipcutils.c | 2 +- sys-utils/lsipc.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) commit 3d9573b98196ab34bc45e862d7700109015e6603 Author: Benno Schulenberg Date: Tue Mar 25 11:42:56 2025 +0100 ipcrm: in usage text, use two lines when option+arguments is very long Also, do not use tabs in the usage text, and keep it within 80 columns. Signed-off-by: Benno Schulenberg sys-utils/ipcrm.c | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) commit 66d03a5ce78c7b539a733c72fc4198fd0d12c6b0 Author: Benno Schulenberg Date: Tue Mar 25 11:42:55 2025 +0100 ipcrm: move a constant argument in order to gettextize the message Signed-off-by: Benno Schulenberg sys-utils/ipcrm.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit bdc723af402dc7050badd1e07f0959403b606869 Author: Masatake YAMATO Date: Wed Mar 26 03:36:50 2025 +0900 include/list,lsfd: remove LIST_HEAD macro again This reverts commit cafae2d19742ad56a05a51bb23b798dbbd5c62a8. See 5d74cf0092b132bf224024548e46566033c84937 about the reason. Signed-off-by: Masatake YAMATO include/list.h | 3 --- lsfd-cmd/sock-xinfo.c | 4 +++- 2 files changed, 3 insertions(+), 4 deletions(-) commit 2ced43400f35f7bd45b29364e04166a63a06e16a Author: Thomas Devoogdt Date: Tue Mar 25 11:58:18 2025 +0100 lsns: fix undefined reference to add_namespace_for_nsfd #3483 Fixes: sys-utils/lsns-lsns.o: In function `read_process': lsns.c:(.text+0x9e8): undefined reference to `add_namespace_for_nsfd' collect2: error: ld returned 1 exit status Signed-off-by: Thomas Devoogdt sys-utils/lsns.c | 6 ++++++ 1 file changed, 6 insertions(+) commit bb8dbc6e30bff86f95a3660b4233758ee8ba29c7 Merge: 42e349847 531b2afd4 Author: Karel Zak Date: Tue Mar 25 13:40:36 2025 +0100 Merge branch 'PR/meson-fix-manadocs' of https://github.com/karelzak/util-linux-work * 'PR/meson-fix-manadocs' of https://github.com/karelzak/util-linux-work: meson: fix manadocs for libsmartcols and libblkid commit 42e34984709ce9c21640b8c2b7aa1cf84a40add0 Merge: b7d5146c8 7dbfe31a8 Author: Karel Zak Date: Tue Mar 25 11:15:13 2025 +0100 Merge branch 'PR/libmount-fix-nocanonicalize' of https://github.com/karelzak/util-linux-work * 'PR/libmount-fix-nocanonicalize' of https://github.com/karelzak/util-linux-work: libmount: fix --no-canonicalize regression commit 531b2afd4ef3016b14fff41eef208ead5213138e Author: Karel Zak Date: Mon Mar 24 15:18:24 2025 +0100 meson: fix manadocs for libsmartcols and libblkid Fixes: https://github.com/util-linux/util-linux/issues/3475 Signed-off-by: Karel Zak meson.build | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) commit b7d5146c8147ea271ea86ffd6a78e05335101f9b Merge: 3961d6d3b bee7a00d9 Author: Karel Zak Date: Mon Mar 24 15:05:42 2025 +0100 Merge branch 'rtc-default' of https://github.com/Villemoes/util-linux * 'rtc-default' of https://github.com/Villemoes/util-linux: Revert "hwclock-rtc.c: try the 'new' rtc class first" commit 3961d6d3b2aa1585be2af99f8f68d97dd093f31c Merge: 2c60fbb00 56b97db03 Author: Karel Zak Date: Mon Mar 24 14:45:34 2025 +0100 Merge branch 'PR/meson-poman-install' of https://github.com/karelzak/util-linux-work * 'PR/meson-poman-install' of https://github.com/karelzak/util-linux-work: meson: fix po-man installation commit 2c60fbb0035e362f6d9b58b34cb9a716e15d67aa Merge: 70634f001 5c0888dde Author: Karel Zak Date: Mon Mar 24 14:44:46 2025 +0100 Merge branch 'PR/fix-non-widechar' of https://github.com/karelzak/util-linux-work * 'PR/fix-non-widechar' of https://github.com/karelzak/util-linux-work: misc: never include wchar.h autotools: don't use wide-character ncurses if --disable-widechar column: fix compiler warning for non-widechar compilation commit 70634f001ea330a35f0f8705fa096f3579024522 Merge: ccda6b9ab d0fb6824d Author: Karel Zak Date: Mon Mar 24 14:43:59 2025 +0100 Merge branch 'fix-2nd-typo' of https://github.com/standby24x7/util-linux * 'fix-2nd-typo' of https://github.com/standby24x7/util-linux: sys-utils/flock.c Fix a typo in flock.c commit 7dbfe31a83f45d5aef2b508697e9511c569ffbc8 Author: Karel Zak Date: Mon Mar 24 14:31:05 2025 +0100 libmount: fix --no-canonicalize regression Fixes: https://github.com/util-linux/util-linux/issues/3474 Signed-off-by: Karel Zak libmount/src/context.c | 3 --- sys-utils/mount.8.adoc | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) commit d0fb6824d88562f8548912fc5a948c77f67d4cc4 Author: Masanari Iida Date: Mon Mar 24 18:21:48 2025 +0900 sys-utils/flock.c Fix a typo in flock.c This patch fixes a spelling typo in a message. Signed-off-by: Masanari Iida sys-utils/flock.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit ccda6b9abde4425c03bf9c8da967fa02a64d0887 Author: Masanari Iida Date: Mon Mar 24 16:21:44 2025 +0900 lib/fileeq.c Fix a typo in message. This patch fixes a spelling typo in a command message. Signed-off-by: Masanari Iida lib/fileeq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit c52a3645aa2ae5a0b8f374e66747dc6a430ba44c Author: Karel Zak Date: Thu Mar 20 14:28:17 2025 +0100 irqtop: use output string in a more robust way Reporte-by: Benno Schulenberg Signed-off-by: Karel Zak sys-utils/irqtop.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) commit 72bab2f66f7aec56f57c12302adf0408addfbc85 Author: Karel Zak Date: Thu Mar 20 14:19:52 2025 +0100 libsmartcols: report cells data size on debug Signed-off-by: Karel Zak include/buffer.h | 1 + lib/buffer.c | 5 +++++ libsmartcols/src/print.c | 3 ++- 3 files changed, 8 insertions(+), 1 deletion(-) commit b7f5e6bba0b77c50eff53d5a9079403cde4cfc18 Author: Karel Zak Date: Thu Mar 20 14:18:14 2025 +0100 irqtop,lsirq: use scols debug Signed-off-by: Karel Zak sys-utils/irqtop.c | 2 ++ sys-utils/lsirq.c | 2 ++ 2 files changed, 4 insertions(+) commit 56b97db03a56d90f0480885a35b0383afabc2e18 Author: Karel Zak Date: Thu Mar 20 13:15:26 2025 +0100 meson: fix po-man installation * in po-man/meson.build use already defined mandir * make sure $DESTDIR is used in the install script Addresses: https://github.com/util-linux/util-linux/pull/3378 Signed-off-by: Karel Zak po-man/meson.build | 3 ++- tools/poman-install.sh | 19 +++++++++++++------ 2 files changed, 15 insertions(+), 7 deletions(-) commit 5c0888dde3cc296d06b8243dcc78248ff90526e5 Author: Karel Zak Date: Thu Mar 20 11:57:06 2025 +0100 misc: never include wchar.h We have a portable "widechar.h" that follows --disable-widechar and provides portability. It is a bug to directly include libc's wchar.h or wctype.h. Fixes: https://github.com/util-linux/util-linux/issues/3470 Signed-off-by: Karel Zak disk-utils/cfdisk.c | 6 +----- include/carefulputc.h | 5 +---- include/fgetwc_or_err.h | 6 +----- lib/idcache.c | 2 +- sys-utils/irqtop.c | 7 ++----- sys-utils/lsns.c | 2 +- tests/helpers/test_sysinfo.c | 2 +- 7 files changed, 8 insertions(+), 22 deletions(-) commit 23aa09d7baec72cf6bac9d32c844a5bd2a6ef609 Author: Karel Zak Date: Thu Mar 20 11:56:07 2025 +0100 autotools: don't use wide-character ncurses if --disable-widechar Signed-off-by: Karel Zak configure.ac | 10 ++++++++++ 1 file changed, 10 insertions(+) commit 0e28ab361375036f62dbba9d589576d38f43f157 Author: Karel Zak Date: Thu Mar 20 11:53:59 2025 +0100 column: fix compiler warning for non-widechar compilation text-utils/column.c: In function ‘ansi_esc_width’: text-utils/column.c:212:17: warning: case label value exceeds maximum value for type [-Wswitch-outside-range] Signed-off-by: Karel Zak text-utils/column.c | 2 ++ 1 file changed, 2 insertions(+) commit 724a8816aee21a18333c74b2fa8c2dae4d6d3e49 Author: Karel Zak Date: Tue Mar 18 14:52:34 2025 +0100 docs: cherry-pick 2.41-ReleaseNotes Signed-off-by: Karel Zak Documentation/releases/v2.41-ReleaseNotes | 1483 +++++++++++++++++++++++++++++ 1 file changed, 1483 insertions(+) commit 82368a0c2ddf506b7e259581cb873bbffb7514c5 Author: Karel Zak Date: Tue Mar 18 14:33:47 2025 +0100 build-sys: update release dates Signed-off-by: Karel Zak NEWS | 2 +- configure.ac | 2 +- meson.build | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) commit 68c944b44dc972ddbbb703c80a053fcefa809f1b Author: Yuri Chornoivan Date: Tue Mar 18 14:33:43 2025 +0100 po: update uk.po (from translationproject.org) po/uk.po | 1844 ++++++++++++++++++++++++-------------------------------------- 1 file changed, 715 insertions(+), 1129 deletions(-) commit 900250a9c961d52034a7837ef691f03a6e34d644 Author: Remus-Gabriel Chelu Date: Tue Mar 18 14:33:42 2025 +0100 po: update ro.po (from translationproject.org) po/ro.po | 1891 +++++++++++++++++++++++++------------------------------------- 1 file changed, 751 insertions(+), 1140 deletions(-) commit fb91d9e061b2b5b9ede3727df27bdaaf2b787c4a Author: Jakub Bogusz Date: Tue Mar 18 14:33:42 2025 +0100 po: update pl.po (from translationproject.org) po/pl.po | 1948 +++++++++++++++++++++++--------------------------------------- 1 file changed, 724 insertions(+), 1224 deletions(-) commit 75ec18a2d8db77354dd22ac6c80e96d3507fe5eb Author: Benno Schulenberg Date: Tue Mar 18 14:33:42 2025 +0100 po: update nl.po (from translationproject.org) po/nl.po | 4330 +++++++++++++++++++++++--------------------------------------- 1 file changed, 1627 insertions(+), 2703 deletions(-) commit a18c869fbca97f1c754c8359740d6d43768767a7 Author: Seong-ho Cho Date: Tue Mar 18 14:33:42 2025 +0100 po: update ko.po (from translationproject.org) po/ko.po | 1861 ++++++++++++++++++++++++-------------------------------------- 1 file changed, 724 insertions(+), 1137 deletions(-) commit a8a9c428505fddd1a0d1da5d863c4f8c4016da35 Author: Božidar Putanec Date: Tue Mar 18 14:33:42 2025 +0100 po: update hr.po (from translationproject.org) po/hr.po | 2768 ++++++++++++++++++-------------------------------------------- 1 file changed, 774 insertions(+), 1994 deletions(-) commit 06f1ce0ecdd9ddbfa3dac8cf0a44a9ee0025bdda Author: Frédéric Marchal Date: Tue Mar 18 14:33:42 2025 +0100 po: update fr.po (from translationproject.org) po/fr.po | 1838 ++++++++++++++++++++++++-------------------------------------- 1 file changed, 710 insertions(+), 1128 deletions(-) commit 8ecc009b828feeed17521e26ff3b44d61082f519 Author: Antonio Ceballos Roa Date: Tue Mar 18 14:33:42 2025 +0100 po: update es.po (from translationproject.org) po/es.po | 9931 ++++++++++++++++++++++++++------------------------------------ 1 file changed, 4157 insertions(+), 5774 deletions(-) commit 02d80f10b25139b65e32e776e32e9e44829ac328 Author: Karel Zak Date: Tue Mar 18 14:33:40 2025 +0100 po-man: merge changes po-man/cs.po | 1703 +- po-man/de.po | 1782 +- po-man/es.po | 1699 +- po-man/fr.po | 49875 +++++++++++++++++++++++++++++++++++--------- po-man/ko.po | 1704 +- po-man/pl.po | 25584 ++++++++++++++++++----- po-man/pt_BR.po | 1729 +- po-man/ro.po | 32064 ++++++++++++++++++++++------ po-man/sr.po | 1780 +- po-man/uk.po | 27725 +++++++++++++++++++----- po-man/util-linux-man.pot | 1703 +- 11 files changed, 115206 insertions(+), 32142 deletions(-) commit e83d1cb99dd9ea47f7f3d914edd38eb0aeda1a3a Author: Michał Kułach Date: Tue Mar 18 14:33:30 2025 +0100 po-man: add pl.po (from translationproject.org) po-man/pl.po | 40189 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40189 insertions(+) commit d3581e6c1ac9a1b59d9a1f82ef2b47617306f34d Author: Yuri Chornoivan Date: Tue Mar 18 14:33:30 2025 +0100 po-man: update uk.po (from translationproject.org) po-man/uk.po | 31770 +++++++++++---------------------------------------------- 1 file changed, 6156 insertions(+), 25614 deletions(-) commit cb18cdda863a434c60640b2501bfda1f76a5f9cc Author: Remus-Gabriel Chelu Date: Tue Mar 18 14:33:30 2025 +0100 po-man: update ro.po (from translationproject.org) po-man/ro.po | 32510 ++++++++++++--------------------------------------------- 1 file changed, 6512 insertions(+), 25998 deletions(-) commit e8f97021ef52cf1def807f2d00a455a748e753cc Author: Frédéric Marchal Date: Tue Mar 18 14:33:30 2025 +0100 po-man: update fr.po (from translationproject.org) po-man/fr.po | 48758 +++++++++++---------------------------------------------- 1 file changed, 8939 insertions(+), 39819 deletions(-) commit 126ef957f7c5d42a4ef51353d521eee6e22b8015 Author: Karel Zak Date: Tue Mar 18 13:39:09 2025 +0100 po-man: fix typos in configuration Signed-off-by: Karel Zak po-man/.gitignore | 2 +- po-man/po4a.cfg | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 746937d2ea2057f294021d767a888c5ac28dbbdb Merge: 1b317ef94 61bd162fa Author: Karel Zak Date: Tue Mar 18 12:51:09 2025 +0100 Merge branch 'PR/no_color' of https://github.com/karelzak/util-linux-work * 'PR/no_color' of https://github.com/karelzak/util-linux-work: terminal-colors.d: support NO_COLOR commit 1b317ef942bf007d2c765a390d2087a79a6de766 Author: Gaël PORTAY Date: Tue Mar 18 09:58:32 2025 +0100 su: (man) fix duplicate asterisk Signed-off-by: Gaël PORTAY Signed-off-by: Karel Zak login-utils/runuser.1.adoc | 2 +- login-utils/su.1.adoc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) commit 549a5178574364a2bd219ad1ed028f4f4ea71c3d Author: Karel Zak Date: Mon Mar 17 14:35:10 2025 +0100 include: use public domain for colors.{c,h} and xalloc.h The LGPL makes it difficult to use the code in the old BSD tools we have in util-linux. After obtaining agreement from the major contributors to the files, we are changing it to "Public Domain". Signed-off-by: Karel Zak include/colors.h | 7 ++++--- include/xalloc.h | 10 ++++------ lib/colors.c | 7 ++++--- 3 files changed, 12 insertions(+), 12 deletions(-) commit 9dd140220c6d6c53383405191001c7372488d264 Author: Karel Zak Date: Mon Mar 17 13:55:06 2025 +0100 unshare: fix typo in --map-groups=subids map name [coverity scan] Addresses: https://github.com/util-linux/util-linux/pull/3121 Signed-off-by: Karel Zak sys-utils/unshare.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 61bd162fa1246a1d296cf943d12f7c01c8053b10 Author: Karel Zak Date: Mon Mar 17 13:38:20 2025 +0100 terminal-colors.d: support NO_COLOR We already provide the ability to easily disable output colorization, but there is also the https://no-color.org initiative based on the NO_COLOR environment variable. Let's support this method to disable colors. Let's be friendly :-) Addresses: https://github.com/util-linux/util-linux/issues/3463 Signed-off-by: Karel Zak lib/colors.c | 2 ++ lib/terminal-colors.d.5.adoc | 8 ++++++-- man-common/colors.adoc | 3 +++ 3 files changed, 11 insertions(+), 2 deletions(-) commit 405cd1b43dbe5ae21e7dac6f6e026d51b50e9617 Merge: 084807535 659dcaa76 Author: Karel Zak Date: Mon Mar 17 12:11:08 2025 +0100 Merge branch 'PR/lscpu-risc' of https://github.com/karelzak/util-linux-work * 'PR/lscpu-risc' of https://github.com/karelzak/util-linux-work: tests: (lscpu) update RISC-V tests to add ISA line lscpu: RISC-V: Print ISA information in summary commit 0848075352d66231380c58268670f834954806ef Merge: 5be4bdf81 d6cdde2d6 Author: Karel Zak Date: Mon Mar 17 12:10:26 2025 +0100 Merge branch 'lsfd--revise-unix-endpoints' of https://github.com/masatake/util-linux * 'lsfd--revise-unix-endpoints' of https://github.com/masatake/util-linux: lsfd: (man) fix a typo lsfd: add UNIX.IPEER column lsfd: fill ENDPOINTS column for UNIX one-way sockets include/list: add a macro for initializing list_head a declarative way lsfd: (refactor) add a helper function building ENDPOINTS strings for UNIX socket lsfd: add a dummy entry for UNIX socket having no peer to the IPC table tests: (lsfd::mkfds-unix-dgram, refactor) split the test into subtests tests: add ts_is_in_docker as a helper function lsfd: (man) fix a typo commit 5be4bdf81a8e89b98b12db275deb6154f87feb4b Author: Karel Zak Date: Mon Mar 17 11:49:57 2025 +0100 more: fix repeat command The function more_key_command() may modify the current command setting. We need to remember the original unmodified version, as specified by the user, as the previous command; otherwise, the output will be affected by unexpected cmd.number settings. Simple reproducer: $ more -c /etc/passwd - Press to jump to the next line. - Press '.' to repeat the last command. Old version: - It clears the screen and prints only one line (like the "1 " command). Fixed version: - It jumps to the next line (like the "" command). Reported-by: Benno Schulenberg Signed-off-by: Karel Zak text-utils/more.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit 659dcaa76fae256de9323b00d40cd6b0df61ff6d Author: Karel Zak Date: Mon Mar 17 11:03:52 2025 +0100 tests: (lscpu) update RISC-V tests to add ISA line Signed-off-by: Karel Zak tests/expected/lscpu/lscpu-rv64-linux | 1 + tests/expected/lscpu/lscpu-rv64-milkvpioneer | 1 + tests/expected/lscpu/lscpu-rv64-visionfive2 | 1 + 3 files changed, 3 insertions(+) commit de50fc4be3b6fbdda4f4f589e0a7aaf299678ce1 Author: Sunil V L Date: Tue Mar 11 21:36:46 2025 +0530 lscpu: RISC-V: Print ISA information in summary The ISA information for RISC-V is important for understanding the different extensions supported by the CPU. Print the ISA information in the summary, with the Base ISA and single-letter extensions at the beginning, followed by multi-letter extensions sorted in alphabetical order. The information is the same as the cpuinfo information, except that underscores are replaced by spaces and multi-letter extensions are simply sorted instead of following any ISA string ordering rule. The sample output below shows the difference between cpuinfo and lscpu. cpuinfo output: isa : rv64imafdch_zicbom_zicboz_zicntr_zicsr_zifencei_zihintntl_zihintpause_zihpm_zawrs_zfa_zba_zbb_zbc_zbs_smaia_ssaia_sstc lscpu output: ISA: rv64imafdch smaia ssaia sstc zawrs zba zbb zbc zbs zfa zicbom zicboz zicntr zicsr zifencei zihintntl zihintpause zihpm Signed-off-by: Sunil V L sys-utils/Makemodule.am | 1 + sys-utils/lscpu-cputype.c | 1 + sys-utils/lscpu-riscv.c | 57 +++++++++++++++++++++++++++++++++++++++++++++++ sys-utils/lscpu.c | 5 +++++ sys-utils/lscpu.h | 2 ++ sys-utils/meson.build | 1 + 6 files changed, 67 insertions(+) commit 7dd72369680323a1c01dd7226e1158741cc8d55d Author: Karel Zak Date: Mon Mar 17 10:54:55 2025 +0100 swapon: remove unnecessary variable usage Signed-off-by: Karel Zak sys-utils/swapon.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) commit 77b01d90dad212e57fa801e2eccda9724d102c0b Author: Benno Schulenberg Date: Sun Mar 16 16:20:39 2025 +0100 various: (man) list --help and --version last among the options Almost all util-linux man pages mention -h/--help and -V/--version last in the list of options. Make the few deviant pages conform. Signed-off-by: Benno Schulenberg disk-utils/cfdisk.8.adoc | 4 ++-- disk-utils/fdisk.8.adoc | 5 +---- disk-utils/swaplabel.8.adoc | 4 ++-- misc-utils/hardlink.1.adoc | 3 +-- misc-utils/look.1.adoc | 2 ++ misc-utils/lsblk.8.adoc | 4 ++-- misc-utils/uuidgen.1.adoc | 4 ++-- sys-utils/eject.1.adoc | 4 ++-- sys-utils/lsmem.1.adoc | 4 ++-- text-utils/bits.1.adoc | 4 ++-- text-utils/rev.1.adoc | 4 ++-- 11 files changed, 20 insertions(+), 22 deletions(-) commit 361718387dc19334d060b5f303cd9fe1c19af01e Author: Benno Schulenberg Date: Sun Mar 16 16:20:38 2025 +0100 more: remove a duplicate call of setlocale() Signed-off-by: Benno Schulenberg text-utils/more.c | 1 - 1 file changed, 1 deletion(-) commit 7a912b98f99131049f91c1a3f53c4f51075ac348 Author: Benno Schulenberg Date: Sun Mar 16 16:20:37 2025 +0100 irqtop,lsirq: set up locale path, so messages get actually translated Signed-off-by: Benno Schulenberg sys-utils/irqtop.c | 3 +++ sys-utils/lsirq.c | 3 +++ 2 files changed, 6 insertions(+) commit ad9b9058721a7322f702d5c9beea6e77cd923377 Author: Benno Schulenberg Date: Thu Mar 13 15:51:49 2025 +0100 swapon: make options --help and --version override --summary When -h or --help is among the given options, most utilities print a help text, ignoring all other options and arguments. Make `swapon --summary --help` conform to this general pattern. Signed-off-by: Benno Schulenberg sys-utils/swapon.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) commit dc21a01dcc97db5f86af3621468e9d79237983e4 Merge: 65b03f74d c64c64b76 Author: Karel Zak Date: Mon Mar 17 10:33:53 2025 +0100 Merge branch 'master' of https://github.com/mdcssw/c-util-linux * 'master' of https://github.com/mdcssw/c-util-linux: Use ipc_stat::cgid for the column COL_CGID. commit 65b03f74df35bc7a7fed3e8afaf29bc5abef94d6 Merge: ede1561d2 95833d8e5 Author: Karel Zak Date: Mon Mar 17 10:32:31 2025 +0100 Merge branch 'PR/meson-poman' of https://github.com/karelzak/util-linux-work * 'PR/meson-poman' of https://github.com/karelzak/util-linux-work: tools/poman-translate: fix to work outside on source dir commit ede1561d2071e0da859cbdd36bee8cf07807caf4 Author: Karel Zak Date: Mon Mar 17 10:32:08 2025 +0100 lslogins: fix typo Signed-off-by: Karel Zak login-utils/lslogins.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit adf644aabef7da560e78b0d1abf8651c0d9572ce Merge: dfba8850e 16c1d8734 Author: Karel Zak Date: Mon Mar 17 10:30:16 2025 +0100 Merge branch 'PR/coverity' of https://github.com/karelzak/util-linux-work * 'PR/coverity' of https://github.com/karelzak/util-linux-work: hwclock: avoid dereferencing a pointer [coverity scan] lsfd: initialize struct stat [coverity scan] unshare: make strings more robust liblastlog2: (test) fix memory leak in failed test [coverity scan] libmount: remove possible leak in mnt_context_guess_srcpath_fstype() [coverity scan] test_sysinfo: remove memory lea [coverity scan] lslogins: remove possible memory leaks [coverity scan] commit d6cdde2d6b9482c1cb790bd17c84fc31a2fad410 Author: Masatake YAMATO Date: Sat Mar 15 06:54:02 2025 +0900 lsfd: (man) fix a typo lsfd-cmd/lsfd.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 44de6a5e52c2bff9651a245cc81e4b01879cab58 Author: Masatake YAMATO Date: Mon Mar 10 07:26:49 2025 +0900 lsfd: add UNIX.IPEER column An example output: # ./lsfd -Q 'TYPE == "UNIX" && SOCK.TYPE == "dgram"' \ -oCOMMAND,PID,TYPE,INODE,UNIX.IPEER,NAME | head COMMAND PID TYPE INODE UNIX.IPEER NAME systemd 1 UNIX 3239 13482 state=connected type=dgram systemd 1 UNIX 1649064 1649065 state=connected type=dgram systemd 1 UNIX 1649065 1649064 state=connected type=dgram systemd 1 UNIX 13465 0 state=connected path=/run/systemd/notify type=dgram ... Signed-off-by: Masatake YAMATO lsfd-cmd/lsfd.1.adoc | 6 ++++ lsfd-cmd/lsfd.c | 3 ++ lsfd-cmd/lsfd.h | 1 + lsfd-cmd/sock-xinfo.c | 6 ++++ .../lsfd/mkfds-unix-dgram-UNIX.IPEEER-column | 6 ++++ tests/ts/lsfd/mkfds-unix-dgram | 34 ++++++++++++++++++++++ 6 files changed, 56 insertions(+) commit 4d123ede99fa527c586224f00fe7a4db8c52c43b Author: Masatake YAMATO Date: Mon Mar 10 06:54:04 2025 +0900 lsfd: fill ENDPOINTS column for UNIX one-way sockets With recvfrom(2) and sendto(2), we can use a UNIX datagram socket at server side without assigning a peer address with connect(2). Here, I call such sockets one-way sockets. # ss -x -p Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port Process ... u_dgr ESTAB 0 0 /run/systemd/notify 13465 * 0 users:(("systemd",pid=1,fd=227)) u_dgr ESTAB 0 0 * 35438 * 13465 users:(("systemd-journal",pid=1280,fd=15)) u_dgr ESTAB 0 0 * 74792 * 13465 users:(("bluetoothd",pid=13874,fd=4)) ... The orignal code could not fill ENDPOINTS for UNIX one-way sockets: # ./original-lsfd -Q 'INODE == 13465' -oCOMMAND,PID,TYPE,INODE,NAME,ENDPOINTS COMMAND PID TYPE INODE NAME ENDPOINTS systemd 1 UNIX 13465 state=connected path=/run/systemd/notify type=dgram With this change, lsfd can fill the column: # ./new-lsfd -Q 'INODE == 13465' -oCOMMAND,PID,TYPE,INODE,NAME,ENDPOINTS COMMAND PID TYPE INODE NAME ENDPOINTS systemd 1 UNIX 13465 state=connected path=/run/systemd/notify type=dgram 1280,systemd-journal,15rw 13874,bluetoothd,4rw Signed-off-by: Masatake YAMATO lsfd-cmd/lsfd.1.adoc | 10 +++ lsfd-cmd/sock-xinfo.c | 97 +++++++++++++++++++--- .../lsfd/mkfds-unix-dgram-ENDPOINTS-column | 2 + tests/ts/lsfd/mkfds-unix-dgram | 6 ++ 4 files changed, 103 insertions(+), 12 deletions(-) commit cafae2d19742ad56a05a51bb23b798dbbd5c62a8 Author: Masatake YAMATO Date: Mon Mar 10 06:52:19 2025 +0900 include/list: add a macro for initializing list_head a declarative way Signed-off-by: Masatake YAMATO include/list.h | 3 +++ 1 file changed, 3 insertions(+) commit 939375cbeb472d1777b51ded64f1a931615c9846 Author: Masatake YAMATO Date: Mon Mar 10 06:40:01 2025 +0900 lsfd: (refactor) add a helper function building ENDPOINTS strings for UNIX socket Signed-off-by: Masatake YAMATO lsfd-cmd/sock-xinfo.c | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) commit 28e950b0da1b7f32d96fea132c743b0b5798d819 Author: Masatake YAMATO Date: Sun Mar 9 12:48:34 2025 +0900 lsfd: add a dummy entry for UNIX socket having no peer to the IPC table With recvfrom(2) and sendto(2), we can use a UNIX datagram socket at server side without assigning a peer address with connect(2). Here, I call such sockets one-way sockets. # ss -x -p Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port Process ... u_dgr ESTAB 0 0 /run/systemd/notify 13465 * 0 users:(("systemd",pid=1,fd=227)) u_dgr ESTAB 0 0 * 35438 * 13465 users:(("systemd-journal",pid=1280,fd=15)) u_dgr ESTAB 0 0 * 74792 * 13465 users:(("bluetoothd",pid=13874,fd=4)) ... The socket, opened with systemd as fd 227, is an example of one-way socket (13465). It has 0 as "Peer Address:Port". From the side of systemd process, there is no communication peers. However, the sockets (35438 and 74792) opened with systemd-journal and bluetoothd have the one-way socket (13465) as their communication peers. We expect lsfd prints these connections if user specifies -o+ENDPOINTS. This change and subsequent changes remove limitations in this area. In the early stage of lsfd process, lsfd collects information about UNIX sockets on the system via unix-diag netlink. lsfd stores the information to the IPC table. lsfd looks up the IPC table when printing ENDPOINTS column. With the original code, lsfd could not fill the ENDPOINTS columns for sockets connecting to an one-way socket because lsfd did not store one-way sockets to the IPC table. # ./original-lsfd -Q 'INODE == 35438 || INODE == 74792' -oCOMMAND,PID,TYPE,INODE,NAME,ENDPOINTS COMMAND PID TYPE INODE NAME ENDPOINTS systemd-journal 1280 UNIX 35438 state=connected type=dgram bluetoothd 13874 UNIX 74792 state=connected type=dgram With this change, lsfd can fill the ENDPOINTS columns for sockets connecting to an one-way socket. The new code puts dummy entries for the one-way sockets to the IPC table. The dummy entries help lsfd to find the connections. # ./new-lsfd -Q 'INODE == 35438 || INODE == 74792' -oCOMMAND,PID,TYPE,INODE,NAME,ENDPOINTS COMMAND PID TYPE INODE NAME ENDPOINTS systemd-journal 1280 UNIX 35438 state=connected type=dgram 1,systemd,227rw bluetoothd 13874 UNIX 74792 state=connected type=dgram 1,systemd,227rw Signed-off-by: Masatake YAMATO lsfd-cmd/sock-xinfo.c | 12 +++++++++++ .../lsfd/mkfds-unix-dgram-ENDPOINTS-column | 2 ++ tests/ts/lsfd/mkfds-unix-dgram | 23 ++++++++++++++++++++++ 3 files changed, 37 insertions(+) commit 8ae0cf4f3ea5f81166cb5c7a0fc112003a6c1607 Author: Masatake YAMATO Date: Tue Mar 11 01:21:16 2025 +0900 tests: (lsfd::mkfds-unix-dgram, refactor) split the test into subtests Signed-off-by: Masatake YAMATO tests/expected/lsfd/mkfds-unix-dgram | 6 ------ tests/expected/lsfd/mkfds-unix-dgram-abstract | 3 +++ tests/expected/lsfd/mkfds-unix-dgram-non-abstract | 3 +++ tests/ts/lsfd/mkfds-unix-dgram | 6 ++++++ 4 files changed, 12 insertions(+), 6 deletions(-) commit 6240c763fbff861330e08a43105ddb57879d9bb0 Author: Masatake YAMATO Date: Wed Mar 12 01:32:34 2025 +0900 tests: add ts_is_in_docker as a helper function Signed-off-by: Masatake YAMATO tests/functions.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) commit beaa7dd93ed336c7e486f1200feeaaec50bb8e52 Author: Masatake YAMATO Date: Wed Mar 12 00:19:45 2025 +0900 lsfd: (man) fix a typo Signed-off-by: Masatake YAMATO lsfd-cmd/lsfd.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 95833d8e5e32dea9781873cbbd4e8b01e02d8bad Author: Karel Zak Date: Thu Mar 13 14:46:38 2025 +0100 tools/poman-translate: fix to work outside on source dir * Let's check only the adoc file name if defined in po4a.cfg, not the complete path. cd .. meson setup build-dir util-linux ninja -C build-dir * Exclude manpage-stub.adoc (it's just an example) Addresses: https://github.com/util-linux/util-linux/pull/3378 Signed-off-by: Karel Zak tools/poman-translate.sh | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) commit c64c64b7683695828a6fef044c7193cfa0461be9 Author: Koutheir Attouchi Date: Thu Mar 13 14:45:01 2025 -0400 Use ipc_stat::cgid for the column COL_CGID. sys-utils/lsipc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit dfba8850e455697005a7f8a07e4f433ba8be28fd Merge: b674e9f51 ecd8d1e56 Author: Karel Zak Date: Thu Mar 13 10:20:36 2025 +0100 Merge branch 'hexdump' of https://github.com/eworm-de/util-linux * 'hexdump' of https://github.com/eworm-de/util-linux: meson: bring hexdump in line with others commit b674e9f517358537dab0132c6f9311dc0c47fee2 Author: Karel Zak Date: Thu Mar 13 10:12:26 2025 +0100 tools: add checktarball-meson.sh Simple script to check for missing meson.build files in the release tarball. Addresses: https://github.com/util-linux/util-linux/issues/3460 Signed-off-by: Karel Zak tools/checktarball-meson.sh | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) commit b8d8e3c7a03e36e3e4ef1c31416f7ef1e36a3e58 Author: Karel Zak Date: Thu Mar 13 10:09:21 2025 +0100 autotools: add missing meson.build files Fixes: https://github.com/util-linux/util-linux/issues/3460 Signed-off-by: Karel Zak Makefile.am | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) commit f4c71fbb24a0a47e1c9e9d834bc05f4c02bdc4c7 Author: Karel Zak Date: Thu Mar 13 09:54:45 2025 +0100 tools: add SPDX-License-Identifier Add an SPDX label to the newly added scripts. Signed-off-by: Karel Zak tools/git-grouped-log | 2 ++ tools/git-tp-sync | 9 +++------ tools/git-version-bump | 8 ++++++++ tools/git-version-gen | 3 +++ 4 files changed, 16 insertions(+), 6 deletions(-) commit 16c1d8734847bdeac0e6650a7364e33fb881bfc6 Author: Karel Zak Date: Wed Mar 12 15:34:17 2025 +0100 hwclock: avoid dereferencing a pointer [coverity scan] Signed-off-by: Karel Zak sys-utils/hwclock-rtc.c | 3 +++ 1 file changed, 3 insertions(+) commit e05e2b4f89a00fadc1032ad7720fefdd99dca029 Author: Karel Zak Date: Wed Mar 12 15:16:18 2025 +0100 lsfd: initialize struct stat [coverity scan] It's probably unnecessary, but for a complicated function, it's probably better just to keep the static analyzer happy. Signed-off-by: Karel Zak lsfd-cmd/lsfd.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) commit ad591f1a8e5917cd41d91de18626494e072414f8 Author: Karel Zak Date: Wed Mar 12 15:05:47 2025 +0100 unshare: make strings more robust Signed-off-by: Karel Zak sys-utils/unshare.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 2e6cc76741a580b9338ab679cf96375eb1084e92 Author: Karel Zak Date: Wed Mar 12 14:29:10 2025 +0100 liblastlog2: (test) fix memory leak in failed test [coverity scan] This is just a cosmetic change to satisfy the static analyzer. The free-before-exit is unnecessary, but in this case (library test), it's better. Signed-off-by: Karel Zak liblastlog2/src/tests/tst_write_read_user.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) commit ecd8d1e56ca5aeef0b47f3a2b855b83e121359b8 Author: Christian Hesse Date: Wed Mar 12 14:06:14 2025 +0100 meson: bring hexdump in line with others Before it was different, and the executable was not installed. meson.build | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) commit 6e2127384ba267119311437b233e413e16ef8721 Author: Karel Zak Date: Wed Mar 12 14:11:49 2025 +0100 libmount: remove possible leak in mnt_context_guess_srcpath_fstype() [coverity scan] Signed-off-by: Karel Zak libmount/src/context.c | 5 ++++- libmount/src/hook_loopdev.c | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) commit 87c1ea68155b88ccdc07069c267a3121468d72c8 Author: Karel Zak Date: Wed Mar 12 13:55:12 2025 +0100 test_sysinfo: remove memory lea [coverity scan] Signed-off-by: Karel Zak tests/helpers/test_sysinfo.c | 1 + 1 file changed, 1 insertion(+) commit 52a6e45bfe5ddee1fed20f2f4f7542cac6bf13c9 Author: Karel Zak Date: Wed Mar 12 13:49:02 2025 +0100 lslogins: remove possible memory leaks [coverity scan] The column can be specified more than once. In this case, the code will gather the column data multiple times, resulting in a memory leak. Signed-off-by: Karel Zak login-utils/lslogins.c | 39 +++++++++++++++++++++++++-------------- 1 file changed, 25 insertions(+), 14 deletions(-) commit 8097dd31c24cb7f10d404ec5f756f9f5a7c248a1 Author: Karel Zak Date: Mon Mar 10 15:32:58 2025 +0100 libsmartcols: add scols_filter_has_holder() Signed-off-by: Karel Zak libsmartcols/docs/libsmartcols-sections.txt | 1 + libsmartcols/src/filter-param.c | 27 +++++++++++++++++++++++++++ libsmartcols/src/libsmartcols.h.in | 2 ++ libsmartcols/src/libsmartcols.sym | 5 +++++ sys-utils/lsns.c | 24 +++++++----------------- 5 files changed, 42 insertions(+), 17 deletions(-) commit 983d8fc3e5d0ef36b68828b7c7c24e8b020a7390 Merge: 80159926c 18d585b59 Author: Karel Zak Date: Mon Mar 10 15:19:52 2025 +0100 Merge branch 'github-issue-3442' of https://github.com/masatake/util-linux * 'github-issue-3442' of https://github.com/masatake/util-linux: tests: (lsns) verify NETNSID column for namespaces with no process running lsns: make "-Q NETNSID ..." work even if NETNSID column is not enabled lsns: show NETNSID for namespaces with no process running lsns: (refactor) generalize the code for collecting netnsid information commit 80159926c7cd9e17dd8b2c82fcaa8a409e8111fd Merge: 2ef987059 43d88060d Author: Karel Zak Date: Mon Mar 10 14:48:14 2025 +0100 Merge branch 'master' of https://github.com/echoechoin/util-linux * 'master' of https://github.com/echoechoin/util-linux: sys-utils/chmem: fix typo. commit 2ef98705992bff130f72caab910960904d1b5b2a Merge: 6bef16056 be77fa82a Author: Karel Zak Date: Mon Mar 10 14:47:19 2025 +0100 Merge branch 'master' of https://github.com/jlinton/util-linux * 'master' of https://github.com/jlinton/util-linux: lscpu: New Arm part numbers commit 6bef160562189a72c6f5c779cb7e06e72a0fe6bc Author: Karel Zak Date: Mon Mar 10 14:43:00 2025 +0100 exch: cosmetic code changes * Remove unnecessary dirfd (use AT_FDCWD directly) * Remove unnecessary 'rc' variable Signed-off-by: Karel Zak misc-utils/exch.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) commit cb108c224848f28cc096a0451b92a2981cd08bb8 Merge: 8de1ec203 72a99516f Author: Karel Zak Date: Mon Mar 10 14:32:40 2025 +0100 Merge branch 'bugfix/exch-renameat2' of https://github.com/ThomasDevoogdt/util-linux * 'bugfix/exch-renameat2' of https://github.com/ThomasDevoogdt/util-linux: exch: fix compile error if renameat2 is not present commit 18d585b59900e98511024a46a92ab6d7958613d4 Author: Masatake YAMATO Date: Sat Mar 8 07:27:31 2025 +0900 tests: (lsns) verify NETNSID column for namespaces with no process running This case tests the two changes about lsns: - make "-Q NETNSID ..." work even if NETNSID column is not enabled, and - show NETNSID for namespaces with no process running Signed-off-by: Masatake YAMATO .../lsns/netnsid-for-persistent-namespaces-NETNSID | 1 + .../lsns/netnsid-for-persistent-namespaces-NSFS | 1 + .../lsns/netnsid-for-persistent-namespaces-TYPE | 1 + tests/functions.sh | 4 + tests/ts/lsns/netnsid | 2 +- tests/ts/lsns/netnsid-for-persistent-namespaces | 89 ++++++++++++++++++++++ 6 files changed, 97 insertions(+), 1 deletion(-) commit e04238952520d485d69a0ad4d30bb7ab9a6fd075 Author: Masatake YAMATO Date: Sat Mar 8 06:42:18 2025 +0900 lsns: make "-Q NETNSID ..." work even if NETNSID column is not enabled With the original code, lsns didn't collect values for NETNSID unless NETNSID column was enabled. As a result, a filter expression referencing NETNSID value didn't work expectedly. # ip netns add X # ip netns set X 99999 # lsns-original -Q 'NETNSID == "99999" (PRINT NOTHING) # lsns-original -Q 'NETNSID == "99999" -o NETNSID NETNSID 99999 With this change, lsns collects values for NETNSID if the filter expression given to -Q option refers to NETNSID. # lsns-new -Q 'NETNSID == "99999" NS TYPE NPROCS PID USER COMMAND 4026535564 net 0 root Signed-off-by: Masatake YAMATO sys-utils/lsns.c | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) commit fdf3008b692271889248f8b077f3a5a7cad77661 Author: Masatake YAMATO Date: Fri Mar 7 08:44:30 2025 +0900 lsns: show NETNSID for namespaces with no process running Fixes #3445 The original code doesn't collect NETNSID for netns namespaces with no process running. A way to reproduce this issue: # ip netns delete X # ip netns add X # ip netns set X 117 # ip netns show X (id: 117) netns-813c699f-4651-e5e9-6af4-cca568bf2c3a (id: 0) # stat /var/run/netns/X File: /var/run/netns/X Size: 0 Blocks: 0 IO Block: 4096 regular empty file Device: 0,4 Inode: 4026533679 Links: 1 Access: (0444/-r--r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Context: system_u:object_r:nsfs_t:s0 Access: 2025-03-06 00:29:58.598605182 +0900 Modify: 2025-03-06 00:29:58.598605182 +0900 Change: 2025-03-06 00:29:58.598605182 +0900 Birth: - # ./lsns -P -o+NETNSID NS TYPE NPROCS PID USER COMMAND NETNSID 4026533679 net 0 root 4026534230 user 0 yamato NS 4026533679 should have "117" as the value of NETNSID. Though the original code defined netnsid member in struct lsns_namespace, the member wasn't used at all. struct lsns_process had a member having the same name. The original code used only the one in struct lsns_process. This change utilizes the netnsid member in struct lsns_namespace. I found another bug, so I will provide a test case for this fix in a subsequent commit. Signed-off-by: Masatake YAMATO sys-utils/lsns.c | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) commit 293070e57335e7715b2f945ced912c18e34c8d4d Author: Masatake YAMATO Date: Sat Mar 8 07:59:21 2025 +0900 lsns: (refactor) generalize the code for collecting netnsid information This change is preparation for subsequent bug fixes. Signed-off-by: Masatake YAMATO sys-utils/lsns.c | 45 +++++++++++++++++++++++++++++---------------- 1 file changed, 29 insertions(+), 16 deletions(-) commit 72a99516f7bdf72411501d0a04cc8f8a7e562d10 Author: Thomas Devoogdt Date: Thu Mar 6 14:18:48 2025 +0100 exch: fix compile error if renameat2 is not present https://www.man7.org/linux/man-pages/man2/rename.2.html Available since Linux 3.15 or glibc 2.28, add a fallback for older systems. My initial implementation did the exchange using a swap file if both HAVE_RENAMEAT2 and SYS_renameat2 were absent. But that is not really what is desired since exch is supposed to be atomic. So simply return -1 renameat2 is available. Signed-off-by: Thomas Devoogdt misc-utils/exch.c | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) commit 8de1ec203b0fbf86ae67b1ac18ba094d36b6a34a Author: Thomas Devoogdt Date: Thu Mar 6 11:49:12 2025 +0100 {configure.ac,meson.build}: conditionally build {enosys,setpriv} if seccomp is present #3280 misc-utils/enosys.c:25:27: fatal error: linux/seccomp.h: No such file or directory #include Signed-off-by: Thomas Devoogdt configure.ac | 4 ++++ meson.build | 7 +++++-- 2 files changed, 9 insertions(+), 2 deletions(-) commit 43d88060d368c17c7ca572f13ced42c255c540ab Author: WanBingjiang <614699596@qq.com> Date: Fri Mar 7 10:11:54 2025 +0800 sys-utils/chmem: fix typo. sys-utils/chmem.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit be77fa82ad491f38537030c329c2a8e0612506a5 Author: Jeremy Linton Date: Thu Mar 6 12:17:30 2025 -0600 lscpu: New Arm part numbers Arm has announced the Cortex-A320 and published the TRM here: https://developer.arm.com/documentation/109551 The Cortex-A520AE with a TRM here: https://developer.arm.com/documentation/107726 The Cortex-A720AE with a TRM here: https://developer.arm.com/documentation/102828 The Neoverse-V3AE with a TRM here: https://developer.arm.com/documentation/101595 Signed-off-by: Jeremy Linton sys-utils/lscpu-arm.c | 4 ++++ 1 file changed, 4 insertions(+) commit fe3f80038d128e42536fee323b0bc07ffb766bd5 Author: Karel Zak Date: Thu Mar 6 11:05:55 2025 +0100 tools/git-grouped-log: sort output Signed-off-by: Karel Zak (cherry picked from commit 0cd3a9030d9ad611ca7773280c55b9e9d2ccceed) tools/git-grouped-log | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 1ebf2148a8866715012f27a2e7c9eef5d1472be1 Author: Karel Zak Date: Thu Mar 6 10:39:15 2025 +0100 tools/git-tp-sync: update also po-man Signed-off-by: Karel Zak (cherry picked from commit a7541e95b1396d4a80ca18fa4e3d9dcc56bc1561) tools/git-tp-sync | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) commit 632e9008a3d0f943f375e2f54c917098e56e43c6 Author: Karel Zak Date: Thu Mar 6 10:23:36 2025 +0100 tools/git-tp-sync: fix checkout -f use Signed-off-by: Karel Zak (cherry picked from commit e21b9fa759b07b251b1e790ee5356dcdf46da55a) tools/git-tp-sync | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit 0e08b4300efac2230d65bdbc737985e399b168d7 Author: Karel Zak Date: Thu Mar 6 12:11:37 2025 +0100 tests: update lsmem outputs Addresses: 68c9f5578230b8a715204d7f05b52b65f97f808a Signed-off-by: Karel Zak tests/expected/lsmem/lsmem-s390-zvm-6g | 36 +++++++++++++++++----------------- tests/expected/lsmem/lsmem-x86_64-16g | 36 +++++++++++++++++----------------- 2 files changed, 36 insertions(+), 36 deletions(-) commit bd83387e25fca9e3fbeb6787b421b24673d7ac8c Author: Benno Schulenberg Date: Tue Mar 4 17:08:06 2025 +0100 hardlink: replace a strange word in an error message Signed-off-by: Benno Schulenberg misc-utils/hardlink.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 68c9f5578230b8a715204d7f05b52b65f97f808a Author: Benno Schulenberg Date: Tue Mar 4 17:08:05 2025 +0100 lsmem: increase the available width for the summary text labels This allows the subsequent numbers to get vertically aligned for most translations too. Signed-off-by: Benno Schulenberg sys-utils/lsmem.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) commit dc5c86e91aa9a8fa386896865e069383c5bc4cac Author: Masatake YAMATO Date: Wed Mar 5 23:25:52 2025 +0900 tests: (lsns/nsfs) consider the cases that lsns returns multiple paths Fixes #3442 If a target directory is bind-mount'ed, lsns returns multiple paths as the value for NSFS column. This change considers this case. Signed-off-by: Masatake YAMATO tests/ts/lsns/nsfs | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) commit f39d142bfea2471ea94cb17de884642e8fcbc880 Author: Masatake YAMATO Date: Wed Mar 5 04:39:12 2025 +0900 tests: (lsns/nsfs) check test_sysinfo helper This check was missed though the command was used in the test case. Signed-off-by: Masatake YAMATO tests/ts/lsns/nsfs | 1 + 1 file changed, 1 insertion(+) commit 4391638806a40b71383646a33ed022476f4c9dea Author: Karel Zak Date: Wed Mar 5 09:53:34 2025 +0100 tests: improve test_sysinfo to check for NS_GET_NSTYPE usability Now the test checks if the kernel supports the NS_GET_NSTYPE ioctl, but it seems that on some platforms it's implemented but does not work as expected and returns ENOTTY. Signed-off-by: Karel Zak tests/helpers/test_sysinfo.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) commit 9c45b256adfc22edbf3783731b7be2b924c8de85 Merge: 4f6135531 14707be73 Author: Karel Zak Date: Tue Mar 4 19:25:34 2025 +0100 Merge branch 'ci-fix-alt-arch-segfaults' of https://github.com/mrc0mmand/util-linux * 'ci-fix-alt-arch-segfaults' of https://github.com/mrc0mmand/util-linux: ci: bump uraimo/run-on-arch-action to v3 Revert "ci: temporarily switch the alt-arch job worker to Ubuntu 22.04" commit 4f6135531ceb808e721f36937c0a11c865bb4bd8 Author: Karel Zak Date: Tue Mar 4 19:07:43 2025 +0100 tests: check for ns-get*-ok Signed-off-by: Karel Zak tests/ts/lsns/filedesc | 4 ++++ tests/ts/lsns/netns-from-sock | 3 +++ tests/ts/lsns/nsfs | 7 +++++++ 3 files changed, 14 insertions(+) commit 14707be7318936a6bed2f1bba5dc7b8741e83992 Author: Frantisek Sumsal Date: Tue Mar 4 13:37:11 2025 +0100 ci: bump uraimo/run-on-arch-action to v3 The latest v3 version should address the sporadic segfaults we've been seeing (mainly on s390x). .github/workflows/cibuild.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit fca77fea84d080547714f5c866c0775d04b61125 Author: Frantisek Sumsal Date: Tue Mar 4 13:36:53 2025 +0100 Revert "ci: temporarily switch the alt-arch job worker to Ubuntu 22.04" This reverts commit c389f166e5c35e3a7d91205997b75bec5d4353fb. .github/workflows/cibuild.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) commit 5c8b3de49913cf6a8d5ddd5a56134311d3abb9ff Merge: a9fe83a2e 82390c030 Author: Karel Zak Date: Tue Mar 4 13:23:04 2025 +0100 Merge branch 'github-issue-3432' of https://github.com/masatake/util-linux * 'github-issue-3432' of https://github.com/masatake/util-linux: test_mkfds: disable ppoll multiplexer if sigset_t is not defined commit a9fe83a2e67dac8e054d38ea99fe4822aa1898ed Merge: 9dea40a4a 3664cacaa Author: Karel Zak Date: Tue Mar 4 12:40:20 2025 +0100 Merge branch 'PR/pidfd-cleanup' of https://github.com/karelzak/util-linux-work * 'PR/pidfd-cleanup' of https://github.com/karelzak/util-linux-work: test_mkfds: remove local pidfd_open() fallback include/pidfd-utils: improve robustness commit 82390c030674ec496ab70b143c54f7e961f45a48 Author: Masatake YAMATO Date: Tue Mar 4 20:05:29 2025 +0900 test_mkfds: disable ppoll multiplexer if sigset_t is not defined Fixes #3432 The ppoll multiplexer requires RAW sigset_t type generally defined in asm/linux.h. However, the parisc arch of the kernel older than 487fa28fa8b60417642ac58e8beda6e2509d18f9 didn't export the type to the user space. Signed-off-by: Masatake YAMATO configure.ac | 9 +++++++++ meson.build | 4 ++++ tests/helpers/test_mkfds.c | 2 ++ tests/helpers/test_mkfds_ppoll.c | 4 ++++ 4 files changed, 19 insertions(+) commit 9dea40a4ad2b8c87e0bd11c09782f824cd82cd96 Merge: 1d113038f 4a1eeff0b Author: Karel Zak Date: Tue Mar 4 11:53:07 2025 +0100 Merge branch 'PR/irq-misc' of https://github.com/karelzak/util-linux-work * 'PR/irq-misc' of https://github.com/karelzak/util-linux-work: lsirq: add support for reading data from given file irqtop: support json output format irqtop: add max iteration support irqtop: add batch mode support commit 3664cacaafa4834b0b7702da9e4df0aef9700263 Author: Karel Zak Date: Tue Mar 4 11:44:16 2025 +0100 test_mkfds: remove local pidfd_open() fallback Signed-off-by: Karel Zak tests/helpers/test_mkfds.c | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) commit 4a1053812f396619070b6849f4d8830c1ee272ee Author: Karel Zak Date: Tue Mar 4 09:47:11 2025 +0100 include/pidfd-utils: improve robustness * remove global UL_HAVE_PIDFD, in many cases we need only subset of pidfd kernel API, rrather than all the functios * improve #ifdefs for pidfd_*() direct syscalls * improve dummy fallback to not redefine system header files Fixes: https://github.com/util-linux/util-linux/issues/3437 Signed-off-by: Karel Zak include/pidfd-utils.h | 28 ++++++++++++++++------------ misc-utils/kill.c | 24 ++++++++++++++---------- sys-utils/unshare.c | 6 +++--- 3 files changed, 33 insertions(+), 25 deletions(-) commit 1d113038fd66510482e899a22e1aca708ad02da5 Merge: 455e609f0 7130d901f Author: Karel Zak Date: Tue Mar 4 10:55:43 2025 +0100 Merge branch 'fallocate-options-excl' of https://github.com/aerusso/util-linux * 'fallocate-options-excl' of https://github.com/aerusso/util-linux: fallocate: rework incompatible options commit 455e609f06810d01336b61a273673e4fddeb33c2 Author: Benno Schulenberg Date: Mon Mar 3 11:21:37 2025 +0100 column: replace a mistaken word in an error message Signed-off-by: Benno Schulenberg text-utils/column.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 4a1eeff0bc597efa4982f7faafcda597b38fbac4 Author: Joe Jin Date: Fri Feb 28 08:13:34 2025 -0800 lsirq: add support for reading data from given file This is helpful for analyzng data saved from other system. Signed-off-by: Joe Jin Cc: Zhenwei Pi Cc: Sami Kerola Cc: Karel Zak bash-completion/lsirq | 4 ++++ sys-utils/irq-common.c | 19 +++++++++---------- sys-utils/irq-common.h | 3 ++- sys-utils/irqtop.c | 12 ++++++++++-- sys-utils/lsirq.1.adoc | 3 +++ sys-utils/lsirq.c | 24 ++++++++++++++++++++---- 6 files changed, 48 insertions(+), 17 deletions(-) commit 40092a872752c86a0a7459ce5f44f7e51d2fa8b9 Author: Joe Jin Date: Fri Feb 28 08:13:33 2025 -0800 irqtop: support json output format Signed-off-by: Joe Jin Cc: Zhenwei Pi Cc: Sami Kerola Cc: Karel Zak bash-completion/irqtop | 1 + sys-utils/irqtop.1.adoc | 3 +++ sys-utils/irqtop.c | 8 +++++++- 3 files changed, 11 insertions(+), 1 deletion(-) commit 2a5513d568737a3953ee94a06fd59f8704ce8dfb Author: Joe Jin Date: Fri Feb 28 08:13:32 2025 -0800 irqtop: add max iteration support Add support for setting the number of iterations. This is useful in non-interactive mode. Signed-off-by: Joe Jin Cc: Zhenwei Pi Cc: Sami Kerola Cc: Karel Zak bash-completion/irqtop | 5 +++++ sys-utils/irqtop.1.adoc | 3 +++ sys-utils/irqtop.c | 19 +++++++++++++++++-- 3 files changed, 25 insertions(+), 2 deletions(-) commit 2a989ed5be9ced00d79fe79c7dcfa19aa7146957 Author: Joe Jin Date: Fri Feb 28 08:13:31 2025 -0800 irqtop: add batch mode support Add batch mode support, which could be useful for sending output to other programs or to a file. Signed-off-by: Joe Jin Cc: Zhenwei Pi Cc: Sami Kerola Cc: Karel Zak bash-completion/irqtop | 6 +++- sys-utils/irqtop.1.adoc | 3 ++ sys-utils/irqtop.c | 89 ++++++++++++++++++++++++++++++++++++------------- 3 files changed, 73 insertions(+), 25 deletions(-) commit 8a69523f95dae34dc0988530fd028c3343a8b440 Merge: fcc7d7608 e60a96560 Author: Karel Zak Date: Mon Mar 3 09:23:24 2025 +0100 Merge branch 'libblkid/ddf' of https://github.com/t-8ch/util-linux * 'libblkid/ddf' of https://github.com/t-8ch/util-linux: libblkid: ddf_read: validate header checksum libc/crc32: make fill value of excluded area configurable libblkid: ddf_raid: drop little-endian handling libblkid: ddf_raid: respect constness of buffer commit fcc7d760819c0406d24b364df4021577d47cb955 Merge: 049901c63 00bd8b9fc Author: Karel Zak Date: Mon Mar 3 09:23:11 2025 +0100 Merge branch 'master' of https://github.com/echoechoin/util-linux * 'master' of https://github.com/echoechoin/util-linux: misc-utils/lastlog2: Add option -a for listing active users only commit 7130d901f1867061514296395589fe004a3e4bec Author: Antonio Russo Date: Sun Mar 2 12:58:07 2025 -0700 fallocate: rework incompatible options Follow up to d95f9a6, addressing ordering requirements, natural incompatibilities between various options, and limitations of posix_fallocate. sys-utils/fallocate.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) commit e60a96560d3b1c60fcf8adb06df2f00c8385ac93 Author: Thomas Weißschuh Date: Thu Feb 27 18:16:03 2025 +0100 libblkid: ddf_read: validate header checksum The DDF header contains a checksum. Validate it. Signed-off-by: Thomas Weißschuh libblkid/src/superblocks/ddf_raid.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) commit 977dd748c53a24c01ed23d3be65f6489130795fc Author: Thomas Weißschuh Date: Thu Feb 27 18:16:01 2025 +0100 libc/crc32: make fill value of excluded area configurable A new user of crc32_exclude_offset() is going to be added which requires a different fill value than the currently hardcoded "0". Add a parameter where each caller can specify their own value. Signed-off-by: Thomas Weißschuh include/crc32.h | 3 ++- lib/crc32.c | 4 ++-- libblkid/src/partitions/gpt.c | 2 +- libblkid/src/superblocks/cramfs.c | 2 +- libblkid/src/superblocks/zonefs.c | 2 +- libfdisk/src/gpt.c | 2 +- 6 files changed, 8 insertions(+), 7 deletions(-) commit 3836dc49923e3a121ffcc7c7d8ec6640d1fcf843 Author: Thomas Weißschuh Date: Thu Feb 27 18:15:56 2025 +0100 libblkid: ddf_raid: drop little-endian handling The DDF specification, both 1.2 and 2.0 require big-endian. This is also what mdadm expects. 5.2 Byte Ordering Each section of the DDF MUST be stored in big-endian format (i.e., the more significant bytes of the section are stored in lower addresses in relation to bytes of lesser significance). Signed-off-by: Thomas Weißschuh libblkid/src/superblocks/ddf_raid.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) commit bc767e283aa1cbc0bf760c85e10f8846a1ac993f Author: Thomas Weißschuh Date: Thu Feb 27 18:15:38 2025 +0100 libblkid: ddf_raid: respect constness of buffer The buffers returned by blkid_probe_get_buffer() are not allowed to be modified. Respect this restriction when casting the buffer to other pointer types. Signed-off-by: Thomas Weißschuh libblkid/src/superblocks/ddf_raid.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) commit 00bd8b9fc1369706d973b5e3cd1f2f7320ed9426 Author: WanBingjiang <614699596@qq.com> Date: Wed Feb 26 15:17:19 2025 +0800 misc-utils/lastlog2: Add option -a for listing active users only misc-utils/lastlog2.8.adoc | 3 +++ misc-utils/lastlog2.c | 13 +++++++++++-- 2 files changed, 14 insertions(+), 2 deletions(-) commit 049901c63ea7ad8a1e0ba4feeaf7360dbf4bdc2f Author: WanBingjiang <614699596@qq.com> Date: Thu Feb 27 15:13:37 2025 +0800 sys-utils/lscpu: Change object type to SCOLS_JSON_STRING if data == "-" sys-utils/lscpu.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) commit 467b0c15b068f5ebd1e51c99c57d8f167a8af9b5 Author: Karel Zak Date: Wed Feb 26 11:50:47 2025 +0100 include/mount-api-utils: improve coding style Improve the alignment of comments and other elements. Signed-off-by: Karel Zak include/mount-api-utils.h | 112 +++++++++++++++++++++++----------------------- 1 file changed, 56 insertions(+), 56 deletions(-) commit ebcc5e31e4c4a3823c013310108e224bf78c85fd Author: Karel Zak Date: Wed Feb 26 11:06:36 2025 +0100 mount: (man) add info about info messages Signed-off-by: Karel Zak sys-utils/mount.8.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 0b48faea8224a9a016924073451e3a8f610ced14 Merge: 57df7ea01 781a960ce Author: Karel Zak Date: Tue Feb 25 12:54:23 2025 +0100 Merge branch 'PR/libmount-statmount-source' of https://github.com/karelzak/util-linux-work * 'PR/libmount-statmount-source' of https://github.com/karelzak/util-linux-work: libmount: add support for STATMOUNT_SB_SOURCE commit 781a960cef0599db0aca074403db87f24394c1af Author: Karel Zak Date: Tue Feb 25 11:48:14 2025 +0100 libmount: add support for STATMOUNT_SB_SOURCE * read mount source by statmount() 9requires kernel >=6.14 * add new STATMOUNT_* masks Signed-off-by: Karel Zak include/mount-api-utils.h | 21 ++++++++++++++++++++- libmount/src/fs.c | 11 +++++++++-- libmount/src/fs_statmount.c | 10 ++++++++-- 3 files changed, 37 insertions(+), 5 deletions(-) commit 57df7ea01b2c3dddbe88651cbd1db9ab0b6c94f2 Author: Karel Zak Date: Tue Feb 25 11:46:46 2025 +0100 fdisk: (man) add note about partition size calculation Signed-off-by: Karel Zak disk-utils/fdisk.8.adoc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit 2263c16364b2248e73b9efd1c33c01bb190ba4a6 Author: Benno Schulenberg Date: Mon Feb 24 14:08:40 2025 +0100 scriptlive: improve some descriptions, markup, and grammar in the manpage Signed-off-by: Benno Schulenberg term-utils/scriptlive.1.adoc | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) commit 921b4fe498edde7d1d5c280d6d50050d18d97b44 Author: Benno Schulenberg Date: Mon Feb 24 14:08:39 2025 +0100 scriptlive: reduce two usage synopses to one simple one No synopsis can show all possible permutattions of arguments and options, so do not even try and just give the most basic form, without unneeded -t, -I, or -B. Also, use angle brackets to show that and are placeholders. Signed-off-by: Benno Schulenberg term-utils/scriptlive.1.adoc | 2 +- term-utils/scriptlive.c | 7 +++---- 2 files changed, 4 insertions(+), 5 deletions(-) commit df2353c92ed5ea632826a4b81f22cb38f944407c Author: Benno Schulenberg Date: Mon Feb 24 14:08:38 2025 +0100 scriptreplay: mark literal values in the man page in bold, not italic Also, mention which keys can be used to speed up, slow down, and pause the replay. Shorten the description of '-s' as it is deprecated. And improve the description of '-t': it does not override the _timingfile_ positional argument, but takes the place of it, makes it unneeded. Signed-off-by: Benno Schulenberg term-utils/scriptreplay.1.adoc | 26 +++++++++++++++++++------- 1 file changed, 19 insertions(+), 7 deletions(-) commit 6a408bdc6596a70cffa40d8fa129508de1410b21 Author: Benno Schulenberg Date: Mon Feb 24 14:08:37 2025 +0100 scriptreplay: reduce two usage synopses to one, and drop the -t from it Those two synopses still did not express several possible forms: scriptreplay -m.1 timings scriptreplay typescript -t timings -m.1 ... So, instead of trying to cover all possibilities, just give the basic form of the command, which is clearest and most helpful. Signed-off-by: Benno Schulenberg term-utils/scriptreplay.1.adoc | 2 +- term-utils/scriptreplay.c | 7 +++---- 2 files changed, 4 insertions(+), 5 deletions(-) commit 2b528997f22c2784bf09d492842833f3a1e38ab0 Author: Benno Schulenberg Date: Mon Feb 24 14:08:36 2025 +0100 scriptreplay: make Up/Down keys use a percentage instead of fixed amount Using a fixed 0.1 amount made each subsequent Down-arrow key slow things down _more_, and each subsequent Up-arrow key speed things up _less_. It's nicer when each subsequent keystroke has the same relative effect. Signed-off-by: Benno Schulenberg term-utils/scriptreplay.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit d2c323bc41dd276bc0678a06b77cceca52a2ec1d Author: Benno Schulenberg Date: Mon Feb 24 14:08:35 2025 +0100 scriptreplay: indicate that is conditional on Also, use angle brackets to show that those words are placeholders, not literals, and improve the descriptions of the key bindings. Signed-off-by: Benno Schulenberg term-utils/scriptreplay.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit e4acb5f5d641175d716a6f230ff6bc28a34b5aaa Merge: 5fe94965f 488aac1bd Author: Karel Zak Date: Tue Feb 25 08:30:11 2025 +0100 Merge branch 'zramctl' of https://github.com/yuwata/util-linux * 'zramctl' of https://github.com/yuwata/util-linux: zramctl: wait for device being initialized and unlocked by udevd commit 5fe94965f4854c91233ea277c21ba7f48dc2cda0 Merge: db38b3cea 4aa39b894 Author: Karel Zak Date: Tue Feb 25 08:29:42 2025 +0100 Merge branch 'PR/libmount-fix-owner' of https://github.com/karelzak/util-linux-work * 'PR/libmount-fix-owner' of https://github.com/karelzak/util-linux-work: Libmount: Fix removal of "owner" option when executed as root commit db38b3cea6e6201cbac65255a0a10772f4a89b10 Merge: 7ef6bd05f bd6c104f9 Author: Karel Zak Date: Tue Feb 25 08:28:55 2025 +0100 Merge branch 'PR/agetty-fix-ttyname' of https://github.com/karelzak/util-linux-work * 'PR/agetty-fix-ttyname' of https://github.com/karelzak/util-linux-work: agetty: fix stdin conversion to tty name commit 7ef6bd05f88b6149a0160877856c6155ef6c7130 Author: Samuel Thibault Date: Tue Feb 25 08:27:18 2025 +0100 autotools: Fix use of mq_open and mq_close Signed-off-by: Karel Zak sys-utils/Makemodule.am | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit 4aa39b894dbb80eab45af53a011224a43b687b94 Author: Karel Zak Date: Mon Feb 24 14:04:53 2025 +0100 Libmount: Fix removal of "owner" option when executed as root When executed as root, libmount replaces the "owner" and "group" mount options with "nosuid, nodev, ..." However, this can result in an "invalid argument" error because libmount removes the unwanted options first and then tries to address the location for the new options using the already removed options. To fix this, we need to reverse the order of operations. Reported-by: hxinzhe Signed-off-by: Karel Zak libmount/src/context_mount.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) commit bd6c104f931329ce6fbc5a1250c8c80a1d8223ee Author: Karel Zak Date: Mon Feb 24 13:37:04 2025 +0100 agetty: fix stdin conversion to tty name Addresses: https://github.com/util-linux/util-linux/issues/3304 Signed-off-by: Karel Zak term-utils/agetty.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) commit 3564de4d10aa0f4b51ab8b7d8b5fa268fa770720 Author: Masatake YAMATO Date: Sat Feb 22 00:37:32 2025 +0900 tests: (flock::range-lock) add a case testing --start/--length Signed-off-by: Masatake YAMATO tests/expected/flock/range-lock | 2 ++ tests/ts/flock/range-lock | 56 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+) commit 04649d5ab4bb3ec8ac5886f6c70e417b5dbdf4a1 Author: Masatake YAMATO Date: Sat Feb 22 00:21:51 2025 +0900 flock: support locking with byte-range New options, --start and --length are for specifying the byte-range. The options assume used with --fcntl option. Signed-off-by: Masatake YAMATO bash-completion/flock | 2 ++ sys-utils/flock.1.adoc | 6 ++++++ sys-utils/flock.c | 29 +++++++++++++++++++++++------ 3 files changed, 31 insertions(+), 6 deletions(-) commit 20509a30d88c250879fe1d586ee165d462540baa Author: Karel Zak Date: Thu Feb 20 14:48:30 2025 +0100 tools/git-grouped-log: add script to generated git log Signed-off-by: Karel Zak tools/git-grouped-log | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 103 insertions(+) commit eeab82e9d78339bbd75904ac3bfee51ee1025f04 Author: Karel Zak Date: Wed Feb 19 20:01:03 2025 +0100 tools: improve in-repo check Signed-off-by: Karel Zak tools/git-tp-sync | 7 +++---- tools/git-version-bump | 8 +++----- 2 files changed, 6 insertions(+), 9 deletions(-) commit ab28ac6bf7b16293040523f2d6856dd26c6414b5 Author: Karel Zak Date: Wed Feb 19 19:38:18 2025 +0100 tools/git-version-bump: add script to update hardcoded versions Signed-off-by: Karel Zak tools/git-version-bump | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) commit 2331531bca0b175df1102c83b4237739abbfa096 Author: Karel Zak Date: Wed Feb 19 18:55:32 2025 +0100 po: merge changes po/hr.po | 9656 ++++++++++++++++++++--------------- po/ka.po | 14473 ++++++++++++++++++++++++++++++++-------------------- po/ro.po | 9811 ++++++++++++++++++++--------------- po/util-linux.pot | 4 +- 4 files changed, 20105 insertions(+), 13839 deletions(-) commit 9d7bc31e831c3f14df2a4a49adaee44828f539c2 Author: Božidar Putanec Date: Wed Feb 19 18:55:23 2025 +0100 po: update hr.po (from translationproject.org) po/hr.po | 9592 ++++++++++++++++++++++++++------------------------------------ 1 file changed, 4027 insertions(+), 5565 deletions(-) commit 080e11a38f9526201ff4cf99ae6c4e06c95cfbf0 Author: Karel Zak Date: Wed Feb 19 18:52:20 2025 +0100 tools/git-tp-sync: require git Signed-off-by: Karel Zak tools/git-tp-sync | 6 ++++++ 1 file changed, 6 insertions(+) commit 27ef5bbab51b3b2d45b9d5805d410b2e095e3cbb Author: Karel Zak Date: Wed Feb 19 18:40:39 2025 +0100 tools/git-tp-sync: merge changes to PO files Signed-off-by: Karel Zak tools/git-tp-sync | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) commit 488aac1bdffc06df5b7fb8fe751a6ddb344d0dea Author: Yu Watanabe Date: Fri Feb 14 10:32:44 2025 +0900 zramctl: wait for device being initialized and unlocked by udevd systemd-udevd takes a lock during processing the uevent for a block device. The kernel refuses 'reset' attribute for zram device is written when the device node is opened. Hence, during systemd-udevd processes a uevent for zram device, we cannot write 'reset' attribute. Let's wait for the device being initialized and unlocked by udevd. Note, there still exists a race window, as we need to release the lock before writing 'reset' attribute. But, the situation should be better now. configure.ac | 2 + meson.build | 15 ++++ sys-utils/Makemodule.am | 6 +- sys-utils/zramctl.c | 182 +++++++++++++++++++++++++++++++++++++++++++++++- 4 files changed, 202 insertions(+), 3 deletions(-) commit fab3548980454647e19d14f87473c44a10db36fd Author: Karel Zak Date: Wed Feb 19 15:53:00 2025 +0100 autotools: remove tools/git-tp-sync-man Signed-off-by: Karel Zak tools/Makemodule.am | 1 - 1 file changed, 1 deletion(-) commit 87f9a6d471da5dbff9f246b55f2937d93fdb674b Author: Karel Zak Date: Wed Feb 19 15:45:20 2025 +0100 tools/git-tp-sync-man: remove obsolete script Signed-off-by: Karel Zak tools/git-tp-sync-man | 54 --------------------------------------------------- 1 file changed, 54 deletions(-) commit 8991d46d9d3b079620ede3b9dd0aefdff9608fc9 Author: Karel Zak Date: Wed Feb 19 15:44:00 2025 +0100 tools/git-tp-sync: support multiple directories Signed-off-by: Karel Zak tools/git-tp-sync | 131 +++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 91 insertions(+), 40 deletions(-) commit 33972cc93941d7f42b522f60c4c4ffa15cfd2a46 Author: Karel Zak Date: Wed Feb 19 12:41:12 2025 +0100 tools/git-tp-sync: reuse git ls-files calls Signed-off-by: Karel Zak tools/git-tp-sync | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) commit 7bbfe3083b5b259ed653914e41688c37206611e9 Author: Karel Zak Date: Wed Feb 19 12:33:58 2025 +0100 tools/git-tp-sync: add --dry-run and --help Signed-off-by: Karel Zak tools/git-tp-sync | 51 ++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 38 insertions(+), 13 deletions(-) commit 100c0c1eee3043edf542d1aafd3b0259f510d70f Author: Karel Zak Date: Wed Feb 19 12:07:00 2025 +0100 tools/git-tp-sync: Compare Revisions The previous version required updating languages through the command line, or it would download all PO files. This commit improves the script by comparing the PO-Revision-Date in the old and new versions, and only commits updated PO files. Signed-off-by: Karel Zak tools/git-tp-sync | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) commit 1f47a39310f53b472cd54b591c8d25ca5c0a6ce5 Author: Karel Zak Date: Wed Feb 19 11:00:41 2025 +0100 po: upadte LINGUAS file Signed-off-by: Karel Zak po/LINGUAS | 2 ++ 1 file changed, 2 insertions(+) commit d41a8dbe8a87872a4a5344d59583fcf979137271 Merge: bcde96f13 de726faae Author: Karel Zak Date: Wed Feb 19 09:52:42 2025 +0100 Merge branch 'mess' of https://github.com/neheb/util-linux * 'mess' of https://github.com/neheb/util-linux: meson: demote two libraries to library commit bcde96f13897b50d4f650479e9d01ec75912d994 Author: Prasanna Paithankar Date: Wed Feb 19 11:42:08 2025 +0530 lsipc: doesn't mount /dev/mqueue Signed-off-by: Prasanna Paithankar sys-utils/lsipc.1.adoc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 7323a362372cd7d5c99824d7b098e9cb09430724 Author: Karel Zak Date: Tue Feb 18 23:03:17 2025 +0100 build-sys: keep the most recent version in NEWS This file is used as a fallback for tools/git-version-gen if tags or git are not available. Signed-off-by: Karel Zak NEWS | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) commit 8adc11faf87ccea65ad8329546715619fbe2c90c Author: Karel Zak Date: Tue Feb 18 18:40:47 2025 +0100 tools/git-version-gen: accept -start in version (as -rc) Signed-off-by: Karel Zak tools/git-version-gen | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit bee7a00d9770e6abea27fd23c5a15729dd786837 Author: Rasmus Villemoes Date: Thu Jan 16 11:38:47 2025 +0100 Revert "hwclock-rtc.c: try the 'new' rtc class first" This (effectively) reverts commit 1811900a91be856e794005511eac7859adb8e383. There was no real motivation given, and it certainly makes the default behaviour of hwclock on current linux systems counter-intuitive: udev has a standard rule so that whichever rtc device is designated as the CONFIG_RTC_HCTOSYS_DEVICE one in the kernel configuration also becomes the target of the /dev/rtc symlink. People may have some other way of setting that symlink, but regardless, that must be considered the primary or default rtc for the system. Also, busybox's implementation of hwclock still uses the original /dev/rtc, /dev/rtc0 order, meaning that installing util-linux's version on a board previously using busybox leads to unexpected regressions - it's not at all clear that one must go around and stick --rtc /dev/rtc on every hwclock invocation in all scripts. While it's usually busybox that should align with the full-fledged implementation, in this case, I do believe that util-linux is wrong. There is no change in behaviour on systems that for some reason do not have a /dev/rtc symlink, or for which it is a symlink to rtc0 (such as on any board with only a single RTC device). However, I do understand that reverting this after 8 years can itself lead to regressions, and I can understand if it would be rejected for that reason. However, in that case I'd appreciate a config option so that one can choose the primary rtc device at build time. include/pathnames.h | 2 +- sys-utils/hwclock-rtc.c | 2 +- sys-utils/hwclock.8.adoc | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) commit e47c6f751a7ef87640c61316ada774e8e9cc6b07 Author: Eugene Gershnik Date: Mon May 6 09:29:39 2024 -0700 libuuid: fix uuid_time on macOS without attribute((alias)) Weak aliases are not supported by clang on Darwin. Instead this fix uses inline asm to make `_uuid_time` an alias to `___uuid_time` It appears that on macOS the time API is purely 32 or 64 bit depending on the build type. There is no ABI issue on that platform and `uuid_time` can be unconditionally aliased to `_uuid_time`. This is all conjectural, however, since I have no ability to make 32-bit builds for macOS - the Apple toolchain doesn't support this since 2019. Fixes util-linux/util-linux#2873 libuuid/src/uuid_time.c | 4 ++++ 1 file changed, 4 insertions(+) commit de726faaee02c4d8eb7d5d31fa459f416393b716 Author: Rosen Penev Date: Tue Sep 24 16:31:50 2024 -0700 meson: demote two libraries to library static versions are not explicitly used anywhere. Signed-off-by: Rosen Penev libfdisk/meson.build | 12 +++--------- liblastlog2/meson.build | 2 +- libuuid/meson.build | 2 +- 3 files changed, 5 insertions(+), 11 deletions(-)