]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
4 weeks agotree-wide: Fix two curl warnings
Daan De Meyer [Fri, 19 Sep 2025 09:29:36 +0000 (11:29 +0200)] 
tree-wide: Fix two curl warnings

(cherry picked from commit 1403faeb152e24ef74230891cc6bf1875292324f)

4 weeks agovirt: revert to detect chroot by comparing with / rather than /proc/PID/root
Mike Yuan [Thu, 18 Sep 2025 23:16:19 +0000 (01:16 +0200)] 
virt: revert to detect chroot by comparing with / rather than /proc/PID/root

This partially reverts d6267b9b18a30c81dd3335230ef71af04e1ea330

So, arch-chroot currently uses a rather cursed setup:
it sets up a PID namespace, but mounts /proc/ from the outside
into the chroot tree, and then call chroot(2), essentially
making it somewhere between chroot(8) and a full-blown
container. Hence, the PID dirs in /proc/ reveal the outer world.
The offending commit switched chroot detection to compare
/proc/1/root and /proc/OUR_PID/root, exhibiting the faulty behavior
where the mentioned environment now gets deemed to be non-chroot.

Now, this is very much an issue in arch-chroot. However,
if /proc/ is to be properly associated with the pidns,
then we'd treat it as a container and no longer a chroot.
Also, the previous logic feels more readable and more
honestly reported errors in proc_mounted(). Hence I opted
for reverting the change here. Still note that the culprit
(once again :/) lies in the arch-chroot's pidns impl, not
systemd.

Fixes https://gitlab.archlinux.org/archlinux/packaging/packages/systemd/-/issues/54

(cherry picked from commit 01184496a2b518f33c56b5803549f27fa8f226fe)

4 weeks agoTEST-81-GENERATORS: libmount disallows omitting fstype
Mike Yuan [Thu, 18 Sep 2025 18:21:29 +0000 (20:21 +0200)] 
TEST-81-GENERATORS: libmount disallows omitting fstype

It's not well-formed to begin with. And util-linux's mount(8)
is pretty much ubiquitously employed, hence it will be rejected
elsewhere too. Just stop pretending it is valid just because
glibc parser is sloppy.

(cherry picked from commit afba4d4387bb02370a58aeaf6ae537a591a5d9cd)

4 weeks agocreds-util: don't reference superblocks when decrypting creds
Lennart Poettering [Thu, 18 Sep 2025 06:44:02 +0000 (08:44 +0200)] 
creds-util: don't reference superblocks when decrypting creds

(cherry picked from commit 7d4b0df9f8955f5f36df86655c305ec2cdcd9a5e)

4 weeks agocore: if we cannot decode a TPM credential skip over it for ImportCredential=
Lennart Poettering [Wed, 17 Sep 2025 08:37:31 +0000 (10:37 +0200)] 
core: if we cannot decode a TPM credential skip over it for ImportCredential=

let's skip over credentials we cannot decode when they are found with
ImportCredential=. When installing an OS on some disk and using that
disk on a different machine than assumed we'll otherwise end up with a
broken boot, because the credentials cannot be decoded when starting
systemd-firstboot. Let's handle this somewhat gracefully.

This leaves handling for LoadCredential=/SetCredential= as it is (i.e.
failure to decrypt results in service failure), because it is a lot more
explicit and focussed as opposed to ImportCredentials= which looks
everywhere, uses globs and so on and is hence very vague and unfocussed.

Fixes: #34740
(cherry picked from commit 4be269563db777bb30f2609b3d4f5180fe9e2d2a)

4 weeks agoman: Point to the nss-systemd manpage for more details.
Andreas Schneider [Thu, 18 Sep 2025 09:22:35 +0000 (11:22 +0200)] 
man: Point to the nss-systemd manpage for more details.

(cherry picked from commit 3b3af5d020c08327b1a50210fe807abb4a98db81)

4 weeks agobasic/efivars: read EFI variables using one read(), not two
Zbigniew Jędrzejewski-Szmek [Tue, 9 Sep 2025 09:39:35 +0000 (11:39 +0200)] 
basic/efivars: read EFI variables using one read(), not two

In https://github.com/systemd/systemd/issues/38842 it is reported that we're again
having trouble accessing EFI variables:
  [  292.212415] H (udev-worker)[253]: Reading EFI variable /sys/firmware/efi/efivars/LoaderDevicePartUUID-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f.
  ...
  [  344.397961] H (udev-worker)[253]: Detected slow EFI variable read access on LoaderDevicePartUUID-4a67b082-0a4c-41cf-b6c7-440b29bb8c4f: 52.185510s

We don't know what causes the slowdown, but it seems reasonable to avoid
unnecessary read() calls. We would read the 4-byte attr first, and then the
actual value later. But our code always reads the value (and discards the attr
in all cases except one, when _writing_ the variable), so let's optimize for
the case where we read the value and read the whole contents in one readv().

(cherry picked from commit 9db9d6806e398465a6366dfc5bdde2e24338ac29)

4 weeks agostub: fix file path handling for loaded kernel
Tobias Heider [Mon, 25 Aug 2025 14:07:54 +0000 (16:07 +0200)] 
stub: fix file path handling for loaded kernel

- Actually pass the new memory file path to parent_loaded_image->FilePath
- Restore old parent_loaded_image if Linux returns
- Pass the same kernel_file_path in load_via_boot_services path
- s/Re-use/Patch in comment explaining what we are doing

Fixes #38566

(cherry picked from commit f4051650657cd337ceba67b773f0e3bf854cbaff)

4 weeks agorepart: do not fail when CopyBlocks= is used in the initrd
Luca Boccassi [Sun, 24 Aug 2025 19:51:23 +0000 (20:51 +0100)] 
repart: do not fail when CopyBlocks= is used in the initrd

When running in the initrd --root= is automatically set to /sysroot or /sysusr
but then using CopyBlocks fails due to a security measure:

root@particle-caba-1e47:~# systemd-repart --dry-run=no /dev/vda
No machine ID set, using randomized partition UUIDs.
Automatic discovery of backing block devices not permitted in --root= mode, refusing.

Follow-up for 5c08da586fc8fe7cda4010e0057cb79ba1d74335

(cherry picked from commit ab0ffca1308240455d6d423490300ea53b873f59)

4 weeks agopull: fix SHA256SUMS fallback for file:// URLs
Lennart Poettering [Mon, 25 Aug 2025 15:05:09 +0000 (17:05 +0200)] 
pull: fix SHA256SUMS fallback for file:// URLs

For file:// there's no http error code 404, but there's
CURLE_FILE_COULDNT_READ_FILE hence call ->on_not_found() in that case
too.

Follow-up for: c456862f87237831ce2bbaeb53a37d1b3d669285

(cherry picked from commit aa7574417b86ac0bb7ed492b7cfc872e9ace15d7)

4 weeks agonetworkctl: list drop unused dbus connection
Zbigniew Jędrzejewski-Szmek [Fri, 10 Oct 2025 08:32:28 +0000 (10:32 +0200)] 
networkctl: list drop unused dbus connection

Do not acquire dbus connection as it is unused in list_links

(cherry picked from commit 505deaff019dadfb9121cd3e265d6b3f7524f5fd)

4 weeks agosd-device: improve and downgrade error message
Zbigniew Jędrzejewski-Szmek [Tue, 9 Sep 2025 10:53:38 +0000 (12:53 +0200)] 
sd-device: improve and downgrade error message

I'm seeing this in the initrd (with the dev_ksmg_record line added to clarify
where the error is coming from):
[    6.114232] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.2
[    6.116842] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.2".
[    6.134115] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.2".
[    6.139427] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.3
[    6.144327] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.3".
[    6.149442] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.3".
[    6.155091] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.3
[    6.160118] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.3".
[    6.164814] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.3".
[    6.169201] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.3
[    6.173990] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.3".
[    6.183104] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.3".
[    6.187746] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.3
[    6.192825] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.3".
[    6.197733] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.3".
[    6.203015] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.3
[    6.207184] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.3".
[    6.211943] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.3".
[    6.216703] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.4
[    6.221944] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.4".
[    6.226803] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.4".
[    6.231238] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.4
[    6.236078] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.4".
[    6.241845] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.4".
[    6.247976] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.4
[    6.252545] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.4".
[    6.256146] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.4".
[    6.260651] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.4
[    6.265151] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.4".
[    6.269755] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.4".
[    6.276206] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.4
[    6.280034] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.4".
[    6.284603] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.4".
[    6.288710] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.5
[    6.293312] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.5".
[    6.297763] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.5".
[    6.302438] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.5
[    6.306948] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.5".
[    6.310797] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.5".
[    6.315097] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.5
[    6.319033] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.5".
[    6.323593] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.5".
[    6.328834] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.5
[    6.333057] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.5".
[    6.337644] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.5".
[    6.341152] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.5
[    6.345436] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.5".
[    6.349824] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.5".
[    6.354306] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.6
[    6.358131] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.6".
[    6.366568] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.6".
[    6.371139] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.6
[    6.375207] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.6".
[    6.378681] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.6".
[    6.382820] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.6
[    6.387143] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.6".
[    6.392192] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.6".
[    6.397109] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.6
[    6.400991] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.6".
[    6.405992] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.6".
[    6.410889] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.6
[    6.414730] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.6".
[    6.418266] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.6".
[    6.422575] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.7
[    6.429942] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.7".
[    6.433780] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.7".
[    6.438509] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.7
[    6.442293] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.7".
[    6.447236] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.7".
[    6.453336] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.7
[    6.458031] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.7".
[    6.461948] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.7".
[    6.465883] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.7
[    6.470072] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.7".
[    6.476196] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.7".
[    6.481182] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:02.7
[    6.484938] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:02.7".
[    6.491322] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:02.7".
[    6.497289] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:03.0
[    6.501935] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:03.0".
[    6.505217] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:03.0".
[    6.509819] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:03.0
[    6.516078] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:03.0".
[    6.520942] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:03.0".
[    6.525178] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:03.0
[    6.528505] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:03.0".
[    6.534669] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:03.0".
[    6.539353] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:03.0
[    6.543035] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:03.0".
[    6.547441] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:03.0".
[    6.553211] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:03.0
[    6.557452] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/class/pci/0000:00:03.0".
[    6.562468] systemd-journald[251]: sd-device: Failed to chase symlinks in "/sys/firmware/pci/0000:00:03.0".
[    6.566955] systemd-journald[251]: dev_kmsg_record: kernel_device=+pci:0000:00:03.1
[    6.570846] systemd-journald[251]: Too many messages being logged to kmsg, ignoring

The error message was misleading, since it sounds like there's an issue with
symlinks, but the device simply doesn't exist. But I think we should suppress
the message altogether. journald spewing messages like this fills up the logs
for no benefit. The sd_device_new* functions can legitimately be used for
"invalid" devices, e.g. to check if they even exist. We have no idea for what
purpose the caller is creating the device object, so let's not log this at all.
The caller can log if appropriate.

(cherry picked from commit 75924efd5a8ddc796c5f2a179a50f137294c868c)

4 weeks agoboot: Strip boot counter from entry id
Danilo Spinella [Thu, 11 Sep 2025 08:51:27 +0000 (10:51 +0200)] 
boot: Strip boot counter from entry id

When boot counter is found in the boot entry filename, strip it from the
id to match bootctl id.

Fixes #38813.

(cherry picked from commit 4301ad00ef715885be5c3bdf84c152030b7d36ff)

4 weeks agovarlink: add IDL comments to basic Varlink service interface
Lennart Poettering [Thu, 11 Sep 2025 12:40:56 +0000 (14:40 +0200)] 
varlink: add IDL comments to basic Varlink service interface

(cherry picked from commit 23860b49753189e2aaf2e0c8d7b50fe6b1e5a065)

4 weeks agomacro: flip ONCE macro to make log_once() and friend actually log once
Yu Watanabe [Wed, 10 Sep 2025 23:39:17 +0000 (08:39 +0900)] 
macro: flip ONCE macro to make log_once() and friend actually log once

Previously, ONCE is false for the first time, and true for later times,
hence log_once() and log_once_errno() suppress logging in the first call,
rather than later calls.

Fortunately, ONCE macro is only used in log_once() and log_once_errno(),
hence this only fixes spurious logging.

(cherry picked from commit acd33c5df8ba35bcfa595ea0be9f74afa6aab289)

4 weeks agojournalctl: fix erroneuous mention of "local" hostnames
Zbigniew Jędrzejewski-Szmek [Tue, 26 Aug 2025 09:08:12 +0000 (11:08 +0200)] 
journalctl: fix erroneuous mention of "local" hostnames

--no-hostname applies equally to remote and local logs.

This change is a separate commit to make it easy to backport.

(cherry picked from commit 8b6c1d392e1471876b57648b2102fe36f39c5cba)

4 weeks agomkosi: switch deb packaging to ci/v258-stable
Luca Boccassi [Wed, 8 Oct 2025 09:46:17 +0000 (10:46 +0100)] 
mkosi: switch deb packaging to ci/v258-stable

4 weeks agosemaphore: switch to ci/v258-stable branch
Luca Boccassi [Wed, 8 Oct 2025 09:45:24 +0000 (10:45 +0100)] 
semaphore: switch to ci/v258-stable branch

debian/master now installs new files for main, time to switch

4 weeks agomkosi: pull in new knot package for TEST-75-RESOLVED
Luca Boccassi [Sun, 5 Oct 2025 13:12:17 +0000 (14:12 +0100)] 
mkosi: pull in new knot package for TEST-75-RESOLVED

5728s TEST-75-RESOLVED.sh[439]: /usr/lib/systemd/tests/testdata/units/TEST-75-RESOLVED.sh: line 154: keymgr: command not found

The command was split out into a new package

(cherry picked from commit 6602a5f7208edd456569343f61b7e5661b0ce299)

4 weeks agomkosi: bump fedora from 42 to 43
Yu Watanabe [Thu, 25 Sep 2025 19:38:12 +0000 (04:38 +0900)] 
mkosi: bump fedora from 42 to 43

It seems
- the address sanitizer on fedora 42 reports false-positive, or
- probing partitions in libblkid 2.40.4 has a bug.

Not sure which causes the issue, but anyway the address sanitizer
kills udev-worker when sym_blkid_partition_get_name() is called
in udev-builtin-blkid.c.
```
systemd-udevd[488]: ==488==ERROR: AddressSanitizer: stack-buffer-underflow on address 0x7ffdd716e020 at pc 0x563e3ca66fcb bp 0x7ffdd716d970 sp 0x7ffdd716d968
systemd-udevd[488]: READ of size 8 at 0x7ffdd716e020 thread T0 ((udev-worker))
(snip)
systemd-udevd[488]: HINT: this may be a false positive if your program uses some custom stack unwind mechanism, swapcontext or vfork
systemd-udevd[488]:       (longjmp and C++ exceptions *are* supported)
systemd-udevd[488]: SUMMARY: AddressSanitizer: stack-buffer-underflow (/usr/bin/udevadm+0x187fca) (BuildId: 1fb56dbdf0447aba1185d6e34560b782b76098be)
(snip)
systemd-udevd[488]: Command: (udev-worker)
systemd-udevd[488]: ==488==ABORTING
```

Let's bump fedora from 42 to 43.

Fixes mkosi fedora 42 job failures after c349edfe49dc2c4b8a79e5d08ecf7c8e93c4c909.

(cherry picked from commit 97940e77a9e347085a0b174bafa90a2823f43657)

4 weeks agomkosi: pull in bsdutils for script, used by various integration tests
Luca Boccassi [Thu, 25 Sep 2025 12:41:58 +0000 (13:41 +0100)] 
mkosi: pull in bsdutils for script, used by various integration tests

4971s TEST-74-AUX-UTILS.sh[1212]: + script -ec 'networkctl edit --runtime "$NETWORK_NAME"' /dev/null
4971s TEST-74-AUX-UTILS.sh[1269]: .//usr/lib/systemd/tests/testdata/units/TEST-74-AUX-UTILS.networkctl.sh: line 55: script: command not found

Currently works due to a transitive dependency somewhere else
that is being dropped, pull it in directly given the tool is
used by the tests

(cherry picked from commit d5eb732724b22adca886c6e10941881b42b47c65)

4 weeks agomkosi: Add stress-ng to sanitizer wrapper programs
Daan De Meyer [Fri, 19 Sep 2025 11:54:37 +0000 (13:54 +0200)] 
mkosi: Add stress-ng to sanitizer wrapper programs

(cherry picked from commit db35a83fe91f651cb98ac7a594dc5169ced34285)

7 weeks agodocs: use '_' as separator for OSC page
Luca Boccassi [Fri, 19 Sep 2025 10:41:30 +0000 (11:41 +0100)] 
docs: use '_' as separator for OSC page

Make it consistent with other pages

Fixes https://github.com/systemd/systemd/issues/39019

(cherry picked from commit 12ef7e0a2c158695664a11f964265359c5bc77b1)

7 weeks agoCreate CNAME
Luca Boccassi [Wed, 17 Sep 2025 13:59:00 +0000 (14:59 +0100)] 
Create CNAME

7 weeks agoFinalize NEWS and meson.version for v258 v258
Luca Boccassi [Wed, 17 Sep 2025 12:00:20 +0000 (13:00 +0100)] 
Finalize NEWS and meson.version for v258

7 weeks agoChores for release (#38958)
Luca Boccassi [Wed, 17 Sep 2025 11:58:15 +0000 (12:58 +0100)] 
Chores for release (#38958)

7 weeks agoNEWS: update time and place 38958/head
Luca Boccassi [Wed, 17 Sep 2025 08:48:51 +0000 (09:48 +0100)] 
NEWS: update time and place

7 weeks agoNEWS: update contributors list
Luca Boccassi [Wed, 17 Sep 2025 08:48:38 +0000 (09:48 +0100)] 
NEWS: update contributors list

ninja -C build git-contrib

[zjs: deduplicate Daan]

7 weeks agomailmap: deduplicate Daan
Zbigniew Jędrzejewski-Szmek [Wed, 17 Sep 2025 10:07:49 +0000 (12:07 +0200)] 
mailmap: deduplicate Daan

7 weeks agoUpdate syscall numbers
Luca Boccassi [Wed, 17 Sep 2025 08:48:00 +0000 (09:48 +0100)] 
Update syscall numbers

ninja -C build update-syscall-tables update-syscall-header

7 weeks agohwdb: update
Luca Boccassi [Wed, 17 Sep 2025 08:41:25 +0000 (09:41 +0100)] 
hwdb: update

ninja -C build update-hwdb

7 weeks agomachine: do not allow unprivileged users to register other users' processes as machin...
Luca Boccassi [Tue, 16 Sep 2025 16:59:45 +0000 (17:59 +0100)] 
machine: do not allow unprivileged users to register other users' processes as machines (#38911)

Registering a process as a machine means a caller can get machined to
send sigterm to it, and more. If an unpriv user is registering, ensure
the registered process has the same uid.

Follow-up for adaff8eb35d9c471af81fddaa4403bc5843a256f

7 weeks agomkosi conf opensuse: ukify from systemd-ukify (#38942)
Luca Boccassi [Tue, 16 Sep 2025 16:58:56 +0000 (17:58 +0100)] 
mkosi conf opensuse: ukify from systemd-ukify (#38942)

* openSUSE tumbleweed moves ukify tool from systemd-experimental to
systemd-ukify.

This is needed to for the TEST-86-MULTI-PROFILE-UKI

7 weeks agomkosi conf opensuse: ukify from systemd-ukify 38942/head
val4oss [Mon, 15 Sep 2025 14:01:19 +0000 (16:01 +0200)] 
mkosi conf opensuse: ukify from systemd-ukify

* openSUSE tumbleweed moves ukify tool from systemd-experimental to
  systemd-ukify.

Signed-off-by: val4oss <github.widget541@passmail.net>
7 weeks agomkosi: update opensuse commit reference to 7d9cf5c934705c175766eaa688baa503da84e06a
val4oss [Tue, 16 Sep 2025 15:09:28 +0000 (17:09 +0200)] 
mkosi: update opensuse commit reference to 7d9cf5c934705c175766eaa688baa503da84e06a

7d9cf5c9347 Update systemd to version 257.9 / rev 456 via SR 1303345
439d743e5d6 Update systemd to version 257.7 / rev 455 via SR 1297651
4f72c6a6279 Update systemd to version 257.7 / rev 454 via SR 1296831
3b0afa5c6d1 Update systemd to version 257.7 / rev 453 via SR 1294979
d0eccd20f5a Update systemd to version 257.7 / rev 452 via SR 1292221
f9d183f8c57 Update systemd to version 257.7 / rev 451 via SR 1291008
cbd6908247d Update systemd to version 257.7 / rev 450 via SR 1289968
6e5c00f9f92 Update systemd to version 257.6 / rev 449 via SR 1286997

Signed-off-by: val4oss <github.widget541@passmail.net>
7 weeks agomachine: add a comment to clarify that root_directory is informational only 38911/head
Luca Boccassi [Tue, 16 Sep 2025 14:51:08 +0000 (15:51 +0100)] 
machine: add a comment to clarify that root_directory is informational only

To avoid any possible mistakes in the future, add a comment in the
object declaration

7 weeks agoman: clarify that machined RootDirectory parameter is informational only
Luca Boccassi [Tue, 16 Sep 2025 14:49:26 +0000 (15:49 +0100)] 
man: clarify that machined RootDirectory parameter is informational only

It's basically just a label, it is not used for any purpose

7 weeks agomachine: validate root directory over varlink
Luca Boccassi [Sat, 13 Sep 2025 00:28:24 +0000 (01:28 +0100)] 
machine: validate root directory over varlink

Use strict validation to reject invalid directories as the D-Bus
API already does

Follow-up for 5b44c81ff868a4d1b78a74e4770f7a8b2f1d0f91

7 weeks agomachine: do not allow unprivileged users to register other users' processes as machines
Luca Boccassi [Fri, 12 Sep 2025 18:59:26 +0000 (19:59 +0100)] 
machine: do not allow unprivileged users to register other users' processes as machines

Registering a process as a machine means a caller can get machined
to send sigterm to it, and more. If an unpriv user is registering,
ensure the registered process is actually owned by the user.

Follow-up for adaff8eb35d9c471af81fddaa4403bc5843a256f

7 weeks agogenerators: fix parameters naming in symlink helper
Luca Boccassi [Tue, 16 Sep 2025 09:11:58 +0000 (10:11 +0100)] 
generators: fix parameters naming in symlink helper

Coverity gets confused because the names were swapped. The parameters
are all passed in the right position, so there's no functional issue,
but the naming is confusing and trips static analyzers, so fix it.

CID#1621624

Follow-up for 8a9ab3dbbc86cf72ef8f511a3214f66a61f6bd01

7 weeks agoman: Update systemd-userdbd.service about .group extension
Andreas Schneider [Tue, 16 Sep 2025 11:38:20 +0000 (13:38 +0200)] 
man: Update systemd-userdbd.service about .group extension

7 weeks agohwdb: add SDRplay devices
AsciiWolf [Mon, 15 Sep 2025 23:06:18 +0000 (01:06 +0200)] 
hwdb: add SDRplay devices

Also remove duplicate MiriSDR device that is just a cheap SDRplay RSP1 copy

7 weeks agoRevert "TEST-55-OOMD: Verify that ExecStopPost= runs on oom-kill"
Luca Boccassi [Mon, 15 Sep 2025 16:33:07 +0000 (17:33 +0100)] 
Revert "TEST-55-OOMD: Verify that ExecStopPost= runs on oom-kill"

The test consistently fails on CentOS 9:

TEST-55-OOMD.sh[678]: + test -f /run/testbloat-exec-stop-post
[FAILED] Failed to start TEST-55-OOMD.service.

https://github.com/systemd/systemd/actions/runs/17689186773/job/50293446228?pr=38911

This reverts commit 5bf7438ff025ae05daf1b706f204f31373d5ab82.

7 weeks agotest: call mksquashfs with -noappend to be safe on reruns
Luca Boccassi [Fri, 12 Sep 2025 23:19:02 +0000 (00:19 +0100)] 
test: call mksquashfs with -noappend to be safe on reruns

If the test VM reboots and the test re-runs, creating the images
fails as they already exist:

[  218.227766] TEST-50-DISSECT.sh[889]: + mksquashfs testkit/ testkit.raw
[  218.238754] TEST-50-DISSECT.sh[2964]: FATAL ERROR: Could not read $HOME, use -recovery-path or -no-recovery options
[  218.239284] TEST-50-DISSECT.sh[2964]: Found a valid exportable SQUASHFS superblock on testkit.raw.
[  218.239554] TEST-50-DISSECT.sh[2964]:  Compression used gzip
[  218.240176] TEST-50-DISSECT.sh[2964]:  Inodes are compressed
[  218.240459] TEST-50-DISSECT.sh[2964]:  Data is compressed
[  218.241072] TEST-50-DISSECT.sh[2964]:  Fragments are compressed
[  218.241526] TEST-50-DISSECT.sh[2964]:  Xattrs are compressed
[  218.241953] TEST-50-DISSECT.sh[2964]:  Fragments are present in the filesystem
[  218.242411] TEST-50-DISSECT.sh[2964]:  Always-use-fragments option is not specified
[  218.242843] TEST-50-DISSECT.sh[2964]:  Duplicates are removed
[  218.243560] TEST-50-DISSECT.sh[2964]:  Xattrs are stored
[  218.243889] TEST-50-DISSECT.sh[2964]:  Filesystem size 0.38 Kbytes (0.00 Mbytes)
[  218.244563] TEST-50-DISSECT.sh[2964]:  Block size 131072
[  218.245051] TEST-50-DISSECT.sh[2964]:  Number of fragments 1
[  218.245512] TEST-50-DISSECT.sh[2964]:  Number of inodes 6
[  218.245851] TEST-50-DISSECT.sh[2964]:  Number of ids 1
[  218.246393] TEST-50-DISSECT.sh[2964]: Parallel mksquashfs: Using 2 processors
[  218.246820] TEST-50-DISSECT.sh[2964]: Scanning existing filesystem...
[  218.247286] TEST-50-DISSECT.sh[2964]: Read existing filesystem, 5 inodes scanned
[  218.252974] TEST-50-DISSECT.sh[2964]: Appending to existing 4.0 filesystem on testkit.raw, block size 131072
[  218.253593] TEST-50-DISSECT.sh[2964]: All -b, -noI, -noD, -noF, -noX, -noId, -no-duplicates, -no-fragments,
[  218.253848] TEST-50-DISSECT.sh[2964]: -always-use-fragments, -exportable and -comp options ignored
[  218.257196] TEST-50-DISSECT.sh[2964]: If appending is not wanted, please re-run with -noappend specified!

https://github.com/systemd/systemd/actions/runs/17674609143/job/50233691148?pr=38867

7 weeks agotest: consolidate checks for unpriv nspawn support in TEST-13-NSPAWN
Luca Boccassi [Sat, 13 Sep 2025 11:25:08 +0000 (12:25 +0100)] 
test: consolidate checks for unpriv nspawn support in TEST-13-NSPAWN

[   69.058386] systemd-nspawn[4371]: varlink: Sending message: {"method":"io.systemd.NamespaceResource.AllocateUserRange","parameters":{"name":"nspawn-4371-zurps","mangleName":true,"size":65536,"userNamespaceFileDescriptor":0}}
[   69.058447] systemd-nsresourcework[4339]: varlink-6-6: Received message: {"method":"io.systemd.NamespaceResource.AllocateUserRange","parameters":{"name":"nspawn-4371-zurps","mangleName":true,"size":65536,"userNamespaceFileDescriptor":0}}
[   69.058455] systemd-nsresourcework[4339]: varlink-6-6: Changing state idle-server → processing-method
[   69.058479] systemd-nsresourcework[4339]: varlink-6-6: Sending message: {"error":"io.systemd.NamespaceResource.UserNamespaceInterfaceNotSupported","parameters":{}}
[   69.058482] systemd-nsresourcework[4339]: varlink-6-6: Changing state processing-method → processed-method
[   69.058486] systemd-nsresourcework[4339]: varlink-6-6: Changing state processed-method → idle-server
[   69.058599] systemd-nspawn[4371]: varlink: Received message: {"error":"io.systemd.NamespaceResource.UserNamespaceInterfaceNotSupported","parameters":{}}
[   69.058604] systemd-nspawn[4371]: varlink: Changing state calling → called
[   69.058609] systemd-nspawn[4371]: varlink: Changing state called → idle-client
[   69.058614] systemd-nspawn[4371]: Unprivileged user namespace delegation is not supported on this system.
[   69.058637] systemd-nsresourcework[4339]: varlink-6-6: Got POLLHUP from socket.
[   69.058647] systemd-nsresourcework[4339]: varlink-6-6: Changing state idle-server → pending-disconnect
[   69.058653] systemd-nsresourcework[4339]: varlink-6-6: Changing state pending-disconnect → processing-disconnect
[   69.058656] systemd-nsresourcework[4339]: varlink-6-6: Changing state processing-disconnect → disconnected
[   69.058698] systemd-nspawn[4371]: Failed to allocate user namespace with 64K users: Operation not supported
[   69.058779] systemd[4344]: systemd-nspawn@zurps.service: Got notification message from PID 4371: STOPPING=1, STATUS=Terminating...

Follow-up for bfd356da63d9fe0720f1b5a61c527c8822c3b808

7 weeks agomeson: link with -Wl,-z,gcs-report-dynamic=none (#38901)
Luca Boccassi [Mon, 15 Sep 2025 11:42:48 +0000 (12:42 +0100)] 
meson: link with -Wl,-z,gcs-report-dynamic=none (#38901)

There is a botched arm64 linker transition going on, where a new feature
is enabled (GCS) and the linker fails the build unless all object files
being linked are built with the new specific feature. This was enabled
in the toolchain (GCC 15) _before_ all libraries were rebuilt, including
glibc, so everything fails. The toolchain maintainers declined to fix it
and instead say that this is a useless warning to have, and to just
disable it and ignore it.

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1110461
> systemd fails to build from source on arm64 if built with GCC-15, currently in
> experimental.
>
> GCC-15 includes support for an arm64 security feature called Guarded Control
> Stack (GCS). To help with GCS adoption, the linker warns about shared libraries
> built without GCS. For example:
>
> /usr/lib/gcc/aarch64-linux-gnu/15/../../../aarch64-linux-gnu/libncursesw.so.6:
> warning: GCS is required by -z gcs, but this shared library lacks the necessary property note.
> The dynamic loader might not enable GCS or refuse to load the program unless
> all the shared library dependencies have the GCS marking.
>
> The warning is harmless, and can be ignored. However, systemd is built with
> --fatal-warnings, and for this reason will fail to build on arm64 once GCC-15
> becomes the default compiler in Debian.

[585/3230] Linking target src/core/libsystemd-core-258.so
FAILED: src/core/libsystemd-core-258.so
gcc  -o src/core/libsystemd-core-258.so  -Wl,--as-needed -Wl,--no-undefined -shared -fPIC -Wl,-soname,libsystemd-core-258.so -Wl,--whole-archive -Wl,--start-group src/core/libsystemd-core-258.a -Wl,--no-whole-archive -fstack-protector -Wl,-z,relro -specs=/usr/share/debhelper/dh_package_notes/debian-package-notes.specs -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/work/src=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -O0 -g -Og -Wdate-time '-Wl,-rpath,$ORIGIN/../shared' src/shared/libsystemd-shared-258.so -shared -Wl,--version-script=/work/src/src/shared/libshared.sym /usr/lib/aarch64-linux-gnu/libacl.so /usr/lib/aarch64-linux-gnu/libaudit.so /usr/lib/aarch64-linux-gnu/libblkid.so -ldl -lm /usr/lib/aarch64-linux-gnu/libmount.so -lrt /usr/lib/aarch64-linux-gnu/libseccomp.so /usr/lib/aarch64-linux-gnu/libselinux.so -Wl,--end-group -pthread -Wl,--fatal-warnings -Wl,-z,now -Wl,-z,relro -Wl,--gc-sections -Wl,--warn-common
src/shared/libsystemd-shared-258.so: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/usr/lib/aarch64-linux-gnu/libacl.so: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/usr/lib/aarch64-linux-gnu/libaudit.so: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/usr/lib/aarch64-linux-gnu/libblkid.so: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/lib/aarch64-linux-gnu/libm.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/lib/aarch64-linux-gnu/libmvec.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/usr/lib/aarch64-linux-gnu/libmount.so: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/usr/lib/aarch64-linux-gnu/libseccomp.so: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/usr/lib/aarch64-linux-gnu/libselinux.so: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
/lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking.
collect2: error: ld returned 1 exit status

7 weeks agoRevert "test: propagate log env vars in run-unit-tests.py wrapper"
Luca Boccassi [Sat, 13 Sep 2025 13:45:54 +0000 (14:45 +0100)] 
Revert "test: propagate log env vars in run-unit-tests.py wrapper"

The default is already to propagate the env vars, so this
was unnecessary and actually creates problem as it removes
custom PATHs

This reverts commit 994af53395df1b572e9a9addc4c9a5452f427034.

7 weeks agogenerators: when creating symlinks, silently ignore existing links in one more place
Zbigniew Jędrzejewski-Szmek [Mon, 8 Sep 2025 17:47:28 +0000 (19:47 +0200)] 
generators: when creating symlinks, silently ignore existing links in one more place

After the update to systemd 257.7 in Fedora, there are reports that we fail to
create a symlink:
  systemd-gpt-auto-generator[585]: Failed to create symlink /run/systemd/generator/local-fs.target.wants/systemd-fsck-root.service: File exists
  (sd-exec-[574]: /usr/lib/systemd/system-generators/systemd-gpt-auto-generator failed with exit status 1.

I guess that some other generator created the symlink. We silently ignore
EEXIST in similar codepaths, so add that in one more place. (The target of the
symlink doesn't really matter. The name of the link matters. So something like
symlink_idempotent would not be better. For example, a different generator
might use a slightly different target path, and symlink_idempotent would be too
strict.)

7 weeks agohwdb: add HydraSDR RFOne
AsciiWolf [Mon, 15 Sep 2025 00:14:08 +0000 (02:14 +0200)] 
hwdb: add HydraSDR RFOne

7 weeks agosystemd-path: return accumulated error instead of last result
anthisfan [Sun, 14 Sep 2025 15:04:47 +0000 (00:04 +0900)] 
systemd-path: return accumulated error instead of last result

Because it returns the result of the final sd_path_lookup() call rather than the return value of RET_GATHER,
it appears that it may return success even if an error occurs during processing.

With this patch, errors encountered during the loop will be properly tallied and returned, and failures will not be silently ignored.

Signed-off-by: anthisfan <gtpgx305@gmail.com>
7 weeks agotest: ensure journal dir is writable by container in TEST-13-NSPAWN
Luca Boccassi [Sat, 13 Sep 2025 15:14:17 +0000 (16:14 +0100)] 
test: ensure journal dir is writable by container in TEST-13-NSPAWN

The systemd-journal group is not mapped, so ensure the test directory
is owned by root:root so that the mapping works.

Follow-up for 88fce090263ba8944cf491346eae2e8022dfd88d

7 weeks agoshell-completion: add missing arguments for journalctl
Luca Boccassi [Sat, 13 Sep 2025 14:28:10 +0000 (15:28 +0100)] 
shell-completion: add missing arguments for journalctl

7 weeks agodissect: include unistd.h
Yu Watanabe [Sun, 14 Sep 2025 02:54:35 +0000 (11:54 +0900)] 
dissect: include unistd.h

This is required by e.g. geteuid(), for the case when unistd.h is
indirectly included by other headers.

Continuation of 4f18ff2e29b8054f30b084abcabf5f689f4b340b.

7 weeks agoTEST-55-OOMD: Verify that ExecStopPost= runs on oom-kill
Daan De Meyer [Tue, 9 Sep 2025 11:27:06 +0000 (13:27 +0200)] 
TEST-55-OOMD: Verify that ExecStopPost= runs on oom-kill

8 weeks agoansi-color: fix stack overflow with debug level and invalid SYSTEMD_COLORS env var
Luca Boccassi [Wed, 10 Sep 2025 12:25:30 +0000 (13:25 +0100)] 
ansi-color: fix stack overflow with debug level and invalid SYSTEMD_COLORS env var

When SYSTEMD_COLORS is invalid, parse_systemd_colors() logs about it.
Logging helpers then call into parse_systemd_colors() to pretty-print
the log message, which then fails, so it logs about the failure,
rinse and repeat until segfault.

Follow-up for c8210d98a4b64af6fadb1cb765c0451758af1303

8 weeks agomkosi conf opensuse: add libtss2-tcti-device0 dep
val4oss [Tue, 9 Sep 2025 13:57:26 +0000 (15:57 +0200)] 
mkosi conf opensuse: add libtss2-tcti-device0 dep

* Add the TPM recommended package for opensuse mkosi conf to fix the
  TEST-70-TPM failure.

Signed-off-by: val4oss <github.widget541@passmail.net>
8 weeks agomkosi: pass through more toolchain flags
Luca Boccassi [Thu, 11 Sep 2025 17:39:17 +0000 (18:39 +0100)] 
mkosi: pass through more toolchain flags

8 weeks agohwdb: add LimeSDR XTRX devices
AsciiWolf [Thu, 11 Sep 2025 19:32:18 +0000 (21:32 +0200)] 
hwdb: add LimeSDR XTRX devices

8 weeks agohwdb: add missing Ettus Research B200 rule
AsciiWolf [Thu, 11 Sep 2025 14:14:18 +0000 (16:14 +0200)] 
hwdb: add missing Ettus Research B200 rule

https://github.com/EttusResearch/uhd/blob/master/host/utils/uhd-usrp.rules#L18

Not sure why it was missing.

8 weeks agotest-namespace: more fixes (#38875)
Luca Boccassi [Thu, 11 Sep 2025 14:32:24 +0000 (15:32 +0100)] 
test-namespace: more fixes (#38875)

8 weeks agotest: PR_DEATHSIG is reset after changing id/gid 38875/head
Luca Boccassi [Thu, 11 Sep 2025 12:16:26 +0000 (13:16 +0100)] 
test: PR_DEATHSIG is reset after changing id/gid

Child processes are left hanging on abort() as these child procs
freeze(), so test suites hang as well when test-namespace fails,
and processes are leaked.

From the docs:

The parent-death signal setting is also cleared upon changes to any of
the following thread credentials: effective user ID, effective group ID,
filesystem user ID, or filesystem group ID.

Set the deathsig again after changing id.

Follow-up for 2ade8218598afba0802b1007535b5c8deaeceb58

8 weeks agotest: do not leave process hanging in test-namespace
Luca Boccassi [Tue, 9 Sep 2025 23:32:02 +0000 (00:32 +0100)] 
test: do not leave process hanging in test-namespace

It is killed when the main test process exists, but still,
it will be left hanging while other test cases run, so it's
not very clean.

Follow-up for 8b5e3be88eeb1bdba50c87cb24d9e6b31e825f38

8 weeks agoukify: fix backend/option applicability docs
Christopher Head [Thu, 11 Sep 2025 05:40:46 +0000 (22:40 -0700)] 
ukify: fix backend/option applicability docs

The `SecureBootPrivateKey` and `SecureBootCertificate` options are used
by the `systemd-sbsign` backend, not just the `sbsign` backend.

8 weeks agotodo - main
Lennart Poettering [Wed, 10 Sep 2025 16:31:20 +0000 (18:31 +0200)] 
todo - main

8 weeks agohwdb: add MiriSDR MSi2500 devices
AsciiWolf [Thu, 11 Sep 2025 00:38:06 +0000 (02:38 +0200)] 
hwdb: add MiriSDR MSi2500 devices

8 weeks agohwdb: add more devices
AsciiWolf [Wed, 10 Sep 2025 22:58:46 +0000 (00:58 +0200)] 
hwdb: add more devices

- FUNcube Dongle Pro
- Great Scott Gadgets HackRF
- Microtelecom Perseus

8 weeks agohwdb: add Airspy devices
AsciiWolf [Tue, 9 Sep 2025 09:56:18 +0000 (11:56 +0200)] 
hwdb: add Airspy devices

8 weeks agoUpdate 60-sensor.hwdb - Add support for Lenovo Legion Go
DeKoile [Wed, 10 Sep 2025 18:22:36 +0000 (20:22 +0200)] 
Update 60-sensor.hwdb - Add support for Lenovo Legion Go

This adds support for the 3D Accelerometer of the Lenovo Legion Go

8 weeks agoTEST-64-UDEV-STORAGE: forcibly create new physical volume
Yu Watanabe [Wed, 10 Sep 2025 12:45:56 +0000 (21:45 +0900)] 
TEST-64-UDEV-STORAGE: forcibly create new physical volume

When the test VM is accidentally rebooted, there exists the previously
created volume, and the command fails with the following:
```
TEST-64-UDEV-STORAGE.sh[282]: + lvm pvcreate -y /dev/md/mdlvm
TEST-64-UDEV-STORAGE.sh[442]:   Can't initialize physical volume "/dev/md127" of volume group "mdlvm_vg" without -ff
TEST-64-UDEV-STORAGE.sh[442]:   /dev/md127: physical volume not initialized.
[FAILED] Failed to start TEST-64-UDEV-STORAGE-mdadm_lvm.service.
```
Let's ignore the existence of previous volume and forcibly create new one.

Workaround for issue #38240.

8 weeks agotest: propagate log env vars in run-unit-tests.py wrapper
Luca Boccassi [Wed, 10 Sep 2025 11:42:33 +0000 (12:42 +0100)] 
test: propagate log env vars in run-unit-tests.py wrapper

To make it easier to debug unit test failures

8 weeks agotest: exit from test child processes
Luca Boccassi [Tue, 9 Sep 2025 22:14:22 +0000 (23:14 +0100)] 
test: exit from test child processes

Otherwise the child processes will continue, return to the test
main function, and try to run other test cases themselves:

<...>
/* test_namespace_get_leader */
PID hierarchy: 553438 ← 553459 ← 553460
/* test_detach_mount_namespace_harder */
/* test_detach_mount_namespace_harder */
/* test_detach_mount_namespace_harder */

Follow-up for 0b8b13324e652cfc3b9f25dec0cf834705bbb8d0

8 weeks agoAdd Hantek DSO-6022 oscilloscopes and compatible devices
Martin Homuth-Rosemann [Tue, 9 Sep 2025 15:32:45 +0000 (17:32 +0200)] 
Add Hantek DSO-6022 oscilloscopes and compatible devices

Signed-off-by: Martin Homuth-Rosemann <Ho-Ro@users.noreply.github.com>
8 weeks agoRemove mention of inactive Tanglu distro from systemd-nspawn man page (#38873)
Raura [Tue, 9 Sep 2025 21:19:46 +0000 (00:19 +0300)] 
Remove mention of inactive Tanglu distro from systemd-nspawn man page (#38873)

Distribution seems inactive for a long time, and the mentioned website has disappeared.
https://distrowatch.com/table.php?distribution=tanglu

8 weeks agotest: remove extension from /var/lib/extensions at the end of the test
Luca Boccassi [Mon, 8 Sep 2025 12:38:30 +0000 (13:38 +0100)] 
test: remove extension from /var/lib/extensions at the end of the test

Otherwise it remains there, and another test case accidentally
uses it on refresh, which then makes another later test fail,
as the hierarchy is already merged:

[  203.969708] TEST-50-DISSECT.sh[890]: + systemd-sysext status
[  203.981831] TEST-50-DISSECT.sh[2795]: HIERARCHY EXTENSIONS SINCE
[  203.982196] TEST-50-DISSECT.sh[2795]: /opt      app0       Mon 2025-09-08 11:49:11 UTC
[  203.982551] TEST-50-DISSECT.sh[2795]: /usr      app0       Mon 2025-09-08 11:49:11 UTC

[  204.119772] TEST-50-DISSECT.sh[2799]: Hierarchy '/usr' is already merged.

Fixes https://github.com/systemd/systemd/issues/38282

8 weeks agobootctl: minor fixups (#38856)
Luca Boccassi [Mon, 8 Sep 2025 17:38:56 +0000 (18:38 +0100)] 
bootctl: minor fixups (#38856)

8 weeks agoman/loader.conf: specify that default entry is id...
Christian Hesse [Mon, 8 Sep 2025 07:45:42 +0000 (09:45 +0200)] 
man/loader.conf: specify that default entry is id...

... which is the file name including literal suffix `.conf`.

8 weeks agobash-completion/bootctl: add missing options and verb 38856/head
Antonio Alvarez Feijoo [Mon, 8 Sep 2025 10:37:26 +0000 (12:37 +0200)] 
bash-completion/bootctl: add missing options and verb

8 weeks agoman/bootctl: replace reference to --no-variables with --variables=no
Antonio Alvarez Feijoo [Mon, 8 Sep 2025 10:32:13 +0000 (12:32 +0200)] 
man/bootctl: replace reference to --no-variables with --variables=no

8 weeks agobootctl: clarify that --secure-boot-auto-enroll requires a boolean value
Antonio Alvarez Feijoo [Mon, 8 Sep 2025 10:31:27 +0000 (12:31 +0200)] 
bootctl: clarify that --secure-boot-auto-enroll requires a boolean value

8 weeks agobootctl: fix reference to non-existent option in error log
Antonio Alvarez Feijoo [Mon, 8 Sep 2025 10:30:35 +0000 (12:30 +0200)] 
bootctl: fix reference to non-existent option in error log

2 months agopo: Translated using Weblate (Khmer (Central))
kanitha chim [Sun, 7 Sep 2025 19:28:13 +0000 (19:28 +0000)] 
po: Translated using Weblate (Khmer (Central))

Currently translated at 57.5% (152 of 264 strings)

Co-authored-by: kanitha chim <kchim@redhat.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/km/
Translation: systemd/main

2 months agocatalog: update Polish translation
Piotr Drąg [Sat, 6 Sep 2025 13:37:44 +0000 (15:37 +0200)] 
catalog: update Polish translation

Includes changes up to e4003f2d9cb93d09d99b87a3d2f68cb0889ecbe8

2 months agosd_bus_message_read.1: fix x/t being [iu]32 instead of [iu]64
наб [Sat, 6 Sep 2025 16:00:28 +0000 (18:00 +0200)] 
sd_bus_message_read.1: fix x/t being [iu]32 instead of [iu]64

2 months agomachine: restrict register-machine action again (#38835)
Luca Boccassi [Sat, 6 Sep 2025 10:04:49 +0000 (11:04 +0100)] 
machine: restrict register-machine action again (#38835)

Follow-up for adaff8eb35d9c471af81fddaa4403bc5843a256f

2 months agoNEWS: update register-machine paragraph 38835/head
Luca Boccassi [Fri, 5 Sep 2025 18:31:59 +0000 (19:31 +0100)] 
NEWS: update register-machine paragraph

2 months agomachine: restrict register-machine action again
Luca Boccassi [Fri, 5 Sep 2025 18:28:47 +0000 (19:28 +0100)] 
machine: restrict register-machine action again

Follow-up for adaff8eb35d9c471af81fddaa4403bc5843a256f

2 months agotest: use assertion macroses
Anton Tiurin [Thu, 4 Sep 2025 17:28:52 +0000 (10:28 -0700)] 
test: use assertion macroses

An assertion macros helps to debug failing tests as it reports
expression, arguments and errno (if applicable)

2 months agomeson: update version numbers for v258~rc4 v258-rc4
Luca Boccassi [Fri, 5 Sep 2025 10:34:36 +0000 (11:34 +0100)] 
meson: update version numbers for v258~rc4

2 months agoNEWS: update date
Luca Boccassi [Fri, 5 Sep 2025 10:34:07 +0000 (11:34 +0100)] 
NEWS: update date

2 months agoNEWS: note sd-stub incompatibility with older ukify
Luca Boccassi [Fri, 5 Sep 2025 10:33:51 +0000 (11:33 +0100)] 
NEWS: note sd-stub incompatibility with older ukify

2 months agotest: add more debug output
Luca Boccassi [Fri, 5 Sep 2025 09:03:32 +0000 (10:03 +0100)] 
test: add more debug output

The test occasionally fails with:

TEST-50-DISSECT.sh[3852]: Hierarchy '/usr' is already merged.

I can't really tell what is already merged as all previous ops
look as they are undone from the logs, so add status/list commands
just before the failing operation to hopefully give more info

For https://github.com/systemd/systemd/issues/38282

2 months agoUpdate hwdb and contributor list for v258-rc4 (#38828)
Daan De Meyer [Fri, 5 Sep 2025 09:19:31 +0000 (11:19 +0200)] 
Update hwdb and contributor list for v258-rc4 (#38828)

2 months agoRevert "terminal-util: explicitly reset cursor"
Zbigniew Jędrzejewski-Szmek [Fri, 5 Sep 2025 06:22:00 +0000 (08:22 +0200)] 
Revert "terminal-util: explicitly reset cursor"

This reverts commit b177095bfac9d04871762cff4febfca43e790529.

The original issue (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=375275,
https://github.com/systemd/systemd/issues/22168) was about having a block
cursor instead of a box cursor after VM reset, which doesn't seem particularly
urgent. OTOH, the patch causes a minor regression, where the splash screen is
cleared immediately and replaced by a blinking cursor. With the patch, we are
trading one visual issue for another visual issue. The second is probably more
noticeable, since some poeple put in quite a lot of work to have pretty boots
where the firmware splash screen is displayed until the login prompt pops up.
Avoiding a regression is more important than fixing a minor long-standing
issue, so let's revert this.

Fixes https://github.com/systemd/systemd/issues/38752.

2 months agoClean up redirection ops in tests (#38827)
Luca Boccassi [Fri, 5 Sep 2025 08:41:53 +0000 (09:41 +0100)] 
Clean up redirection ops in tests (#38827)

2 months agoNEWS: update contributor list 38828/head
Zbigniew Jędrzejewski-Szmek [Fri, 5 Sep 2025 07:17:06 +0000 (09:17 +0200)] 
NEWS: update contributor list

2 months agohwdb: run "update-hwdb"
Zbigniew Jędrzejewski-Szmek [Fri, 5 Sep 2025 07:12:31 +0000 (09:12 +0200)] 
hwdb: run "update-hwdb"

As usual, just additions and corrections.

2 months agonspawn: Drop CAP_NET_BIND_SERVICE if in userns with identity mapping (#38723)
Daan De Meyer [Fri, 5 Sep 2025 07:08:44 +0000 (09:08 +0200)] 
nspawn: Drop CAP_NET_BIND_SERVICE if in userns with identity mapping (#38723)

Even if there's no uid shift, we still won't be able to bind to
privileged ports in the host network namespace, so drop the capability
regardless of whether we have a uid shift or not.

2 months agotests: drop pointless redirection of stderr from 'command -v' 38827/head
Zbigniew Jędrzejewski-Szmek [Fri, 5 Sep 2025 06:07:24 +0000 (08:07 +0200)] 
tests: drop pointless redirection of stderr from 'command -v'

The whole point of using 'command -v' is that it's a very portable
way to check if an executable exists. It doesn't print an error.

2 months agoTEST-75-RESOLVED: drop whitespace after shell redirection ops
Zbigniew Jędrzejewski-Szmek [Wed, 3 Sep 2025 10:00:21 +0000 (12:00 +0200)] 
TEST-75-RESOLVED: drop whitespace after shell redirection ops

2 months agotest: Add test for nspawn's handling of cap_net_bind_service 38723/head
Daan De Meyer [Thu, 4 Sep 2025 10:48:35 +0000 (12:48 +0200)] 
test: Add test for nspawn's handling of cap_net_bind_service