Commit graph

73345 commits

Author SHA1 Message Date
Frantisek Sumsal 516652bbfd test: mountnfsd -> mountfsd
I keep accidentally writing mountnfsd instead of mountfsd, and a couple
of instances managed to get into the repo.
2024-04-26 17:14:07 +02:00
Richard Maw 6e40124efb mkosi: use generic ubuntu kernel for udev and nvme tests
TEST-17-UDEV expects to find scsi_debug and TEST-84-STORAGETM expects to
find nvmet-tcp.

This isn't ideal as it adds firmware, microcode and other drivers to the
initramfs, but there's no linux-modules-extra virtual package
to just include the extra modules.
2024-04-26 15:55:42 +01:00
Richard Maw 9750972455 mkosi: Use default opensuse kernel for tests
The kvmsmall kernel lacks important modules like the dummy network
device which TEST-17-UDEV requires very early on.
2024-04-26 15:55:42 +01:00
Richard Maw ab5f60cb23 test: Disable network by default in mkosi tests 2024-04-26 15:55:42 +01:00
Luca Boccassi cb091faeca
Merge pull request #32499 from mrc0mmand/docs-fix-method-name
docs: drop invalid links & fix method name
2024-04-26 16:47:25 +02:00
Luca Boccassi 7f7d32b642
Merge pull request #32498 from DaanDeMeyer/mkosi
mkosi: Set CleanPackageMetadata=yes for minimal-base
2024-04-26 16:44:19 +02:00
Daan De Meyer 13b67b61b3 sd-daemon: Replace SO_LINGER with shutdown() + recv()
Let's shutdown the write end and wait for EOF from the other side
before continuing to make sure that the receiver has received all
data we sent on the socket.
2024-04-26 15:11:38 +02:00
Frantisek Sumsal 7248912d10 docs: PrepareForSuspend() is not a valid signal name 2024-04-26 14:57:22 +02:00
Frantisek Sumsal 3f1c304803 docs: drop invalid links 2024-04-26 14:57:22 +02:00
Daan De Meyer dcbf0be1b7 TEST-50-DISSECT: Don't log image contents to console
These can contain quite a few files, so let's not write every single
file and directory straight to the console to speed things up.
2024-04-26 13:51:49 +02:00
Daan De Meyer e392c868d2 mkosi: Set CleanPackageMetadata=yes for minimal-base
We don't want to install any more packages in derived images so let's
not store repository metadata in the image to make it smaller.
2024-04-26 13:46:45 +02:00
Daan De Meyer b6df6bef31 mkosi: Update to latest 2024-04-26 13:36:40 +02:00
Luca Boccassi 75e4b277c7 NEWS: add back deprecation notices that have not been implemented yet 2024-04-26 10:43:46 +01:00
Luca Boccassi 1900b43a8f
Merge pull request #32494 from arthurzam/bash-importctl
shell completion: add bash completion for importctl & fix machinectl
2024-04-26 11:33:37 +02:00
Arthur Zamarin 3eb329bfb5
shell completion: fix machinectl import-{tar,raw}
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
2024-04-26 12:10:30 +03:00
Arthur Zamarin 35dcdca0ed
shell completion: add bash completion for importctl
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
2024-04-26 12:07:53 +03:00
김인수 c291038141 po: Translated using Weblate (Korean)
Currently translated at 100.0% (233 of 233 strings)

Co-authored-by: 김인수 <simmon@nplob.com>
Translate-URL: https://translate.fedoraproject.org/projects/systemd/main/ko/
Translation: systemd/main
2024-04-26 11:03:49 +02:00
Daan De Meyer 469fdfbc97
Merge pull request #32490 from YHNdnzj/namespace-cleanup
core: trivial cleanups for setup_namespace
2024-04-26 08:29:32 +02:00
Mike Yuan 01a0896f3c
core/exec-invoke: use FOREACH_ARRAY more, drop unnecessary initialization
for some fields
2024-04-26 10:24:39 +08:00
Mike Yuan e2663cbd39
core/namespace: check error first, add missing assertion 2024-04-26 10:24:38 +08:00
Mike Yuan a0a09da45e
mount-setup: fix typo 2024-04-26 10:24:38 +08:00
Luca Boccassi ae68d27a7e NEWS: finalize for v256~rc1 2024-04-26 01:00:07 +01:00
Luca Boccassi 051f569c79
Merge pull request #32488 from bluca/chores
Chores for 256~rc1
2024-04-26 01:59:36 +02:00
Luca Boccassi ffd8149bc0 sd-radv: remove unnecessary check
in6_addr_prefix_intersect() returns a bool, so the check < 0 is
dead code. Flagged by codeql.

Follow-up for c7c56724a5
2024-04-26 07:03:27 +09:00
Luca Boccassi d1b0407065 meson: update version numbers for 256~rc1 2024-04-25 22:26:08 +01:00
Luca Boccassi 3a0e60dbca Update hwdb 2024-04-25 22:23:52 +01:00
Luca Boccassi 361c721de5 NEWS: update contributors list 2024-04-25 22:21:51 +01:00
Lennart Poettering b24c384b5d varlink: make errors returned by verify_unix_socket() systematic
Previously, if we encountered a non-socket fd we'd return ENOTSOCK the
first time, but the subsequent times we'd return ENOMEDIUM, due to
caching. Let's make sure we return the same errors all the the time.
2024-04-25 22:17:30 +02:00
Daan De Meyer 536b5c0748
Merge pull request #32445 from DaanDeMeyer/mkosi-images
mkosi: Build minimal images and enable related integration tests
2024-04-25 21:59:23 +02:00
Daan De Meyer 74e07b33b0 sd-daemon: Set SO_LINGER on AF_VSOCK notify socket fds
We're still seeing problems in mkosi CI where we lose notify messages
sent over vsock from virtual machines because the virtual machine shuts
down before the socket buffers are flushed.

Let's try setting SO_LINGER on vsock sockets so that the kernel waits
until the buffers are flushed when we close the file descriptor.

To make sure it works, let's get rid of our previous workaround that
sends EXIT_STATUS earlier to reduce the chance of it not arriving.
This way, if it doesn't work, we'll notice it immediately due to CI
failures.
2024-04-25 21:29:34 +02:00
Daan De Meyer 24f2ff1167
Merge pull request #32484 from DaanDeMeyer/mkosi-ci
Two mkosi CI improvements
2024-04-25 21:13:09 +02:00
Daan De Meyer c77dad706b mkosi: Build minimal images and enable related integration tests
This commit adds definitions to build the minimal_0 and minimal_1
images with mkosi and includes them into the system image. We also
move the building of the various app-xxx and similar images that are
extremely minimal into the tests itself by moving the related logic
from install_verity_minimal() into a new function
install_extension_images() in util.sh. Because the mkosi /usr is
read-only, we now place the extension images in /tmp instead of
/usr/share.

Co-authored-by: Richard Maw <richard.maw@codethink.co.uk>
Co-authored-by: sam-leonard-ct <sam.leonard@codethink.co.uk>
2024-04-25 21:06:30 +02:00
Daan De Meyer 1731008879 mkosi: Only keep failed test journals and other logs for 7 days
The default retention of 90 days seems a bit long, so drop it to 7
days.
2024-04-25 20:51:11 +02:00
Daan De Meyer 4becd5fb73 mkosi: Only archive outputs in systemd and systemd-stable repositories
Private forks would very quickly reach their quota or spend lots of
money trying to archive all these artifacts, so let's make sure it
only happens on our own repositories.
2024-04-25 20:51:08 +02:00
Daan De Meyer 69dc36f69b TEST-50-DISSECT: Make sure logging sockets are mounted into images
Otherwise we lose valuable logging from systemd-executor when things
go wrong since it can only log to the journal and not to the console
in these cases.
2024-04-25 19:39:31 +02:00
Luca Boccassi d1c4174d69
Merge pull request #32475 from bluca/skip
test: skip testsuite-50.mountnfsd if kernel/polkit are too old
2024-04-25 18:48:57 +02:00
Łukasz Stelmach e85be4983d Fix _do_log conditions in log_exec_* macros
The expression for calculation of the _do_log values in the log_exec_*
macros need to be the same as the unit_log_level_test() function, used
to calculate _do_log in unit.h. The only difference between execute.h
and unit.h is the lack of the Unit structure.

Fixes: b646fc324a ("core: ensure execute/spawn functions can work without Unit object")
Fixes: 210ca71cb5 ("core/execute: clean up log_exec_full_errno and friends")
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
2024-04-25 18:24:36 +02:00
Daan De Meyer 2541f28e4b
Merge pull request #32477 from DaanDeMeyer/fixes
Various fixes
2024-04-25 18:24:09 +02:00
Luca Boccassi 8e0bd955fe
Merge pull request #32474 from poettering/varlink-no-pidfd
varlink: tweak fallback for SO_PEERPIDFD on old kernels
2024-04-25 17:27:18 +02:00
Luca Boccassi c929c6a987
Merge pull request #32467 from yuwata/network-radv-cleanup
undefined
2024-04-25 17:10:27 +02:00
dependabot[bot] 34b795d4e9 build(deps): bump pkg/debian from 733ac7c to 4b1f868
Bumps pkg/debian from `733ac7c` to `4b1f868`.

---
updated-dependencies:
- dependency-name: pkg/debian
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-04-25 17:07:26 +02:00
Antonio Alvarez Feijoo 5cef6b5393 cryptsetup-tokens: fix pin asserts
If a user only presses ENTER when the PIN is requested (without actually typing
the PIN), an assertion is reached and no other unlock method is requested.

```
sh-5.2# systemctl status systemd-cryptsetup@cr_root
× systemd-cryptsetup@cr_root.service - Cryptography Setup for cr_root
     Loaded: loaded (/etc/crypttab; generated)
    Drop-In: /etc/systemd/system/systemd-cryptsetup@.service.d
             └─pcr-signature.conf
     Active: failed (Result: core-dump) since Thu 2024-04-25 08:44:30 UTC; 10min ago
       Docs: man:crypttab(5)
             man:systemd-cryptsetup-generator(8)
             man:systemd-cryptsetup@.service(8)
    Process: 559 ExecStartPre=/usr/bin/pcr-signature.sh (code=exited, status=0/SUCCESS)
    Process: 604 ExecStart=/usr/bin/systemd-cryptsetup attach cr_root /dev/disk/by-uuid/a8cbd937-6975-4e61-9120-ce5c03138700 none x-initrd.attach,tpm2-device=auto (code=dumped, signal=ABRT)
   Main PID: 604 (code=dumped, signal=ABRT)
        CPU: 19ms

Apr 25 08:44:29 localhost systemd[1]: Starting Cryptography Setup for cr_root...
Apr 25 08:44:30 localhost systemd-cryptsetup[604]: Assertion '!pin || pin_size > 0' failed at src/cryptsetup/cryptsetup-tokens/cryptsetup-token-systemd-tpm2.c:60, function cryptsetup_token_open_pin(). Aborting.
Apr 25 08:44:30 localhost systemd[1]: systemd-cryptsetup@cr_root.service: Main process exited, code=dumped, status=6/ABRT
Apr 25 08:44:30 localhost systemd[1]: systemd-cryptsetup@cr_root.service: Failed with result 'core-dump'.
Apr 25 08:44:30 localhost systemd[1]: Failed to start Cryptography Setup for cr_root.
```

In this case, `cryptsetup_token_open_pin()` receives an empty (non-NULL) `pin`
with `pin_size` equals to 0.

```
🔐 Please enter LUKS2 token PIN:

Breakpoint 3, cryptsetup_token_open_pin (cd=0x5555555744c0, token=0, pin=0x5555555b3cc0 "", pin_size=0, ret_password=0x7fffffffd380,
    ret_password_len=0x7fffffffd378, usrptr=0x0) at ../src/cryptsetup/cryptsetup-tokens/cryptsetup-token-systemd-tpm2.c:42
42	                void *usrptr /* plugin defined parameter passed to crypt_activate_by_token*() API */) {
(gdb) continue
Assertion '!pin || pin_size > 0' failed at src/cryptsetup/cryptsetup-tokens/cryptsetup-token-systemd-tpm2.c:60, function cryptsetup_token_open_pin(). Aborting.
```
2024-04-25 17:07:11 +02:00
Daan De Meyer aa976d8788 tree-wide: Use log_setup() everywhere
Otherwise the default log target is the console and we won't use
the journal socket even if it is available.
2024-04-25 17:06:43 +02:00
Daan De Meyer d74ebb175a mkosi: Make sure systemd-resolved is started on boot 2024-04-25 17:06:42 +02:00
Daan De Meyer f449a29bb9 portable: Don't fail if /etc/resolv.conf doesn't exist
The portable profiles assume /etc/resolv.conf exists, which isn't
always the case. Let's mark the mounts as optional so we don't fail
to start the unit if /etc/resolv.conf doesn't exist.
2024-04-25 17:06:42 +02:00
Daan De Meyer cf5e1b5d39 test: Skip meson integration tests if SYSTEMD_INTEGRATION_TESTS != 1
We cannot mark a test suite as excluded by default in meson. Instead,
let's require that SYSTEMD_INTEGRATION_TESTS=1 and skip any integration
test if it's not set. This is effectively the same as excluding it by
default. If the integration-test option is enabled, we'll set the
environment variable by default, just like we do with SYSTEMD_SLOW_TESTS
and the slow-tests meson option.
2024-04-25 17:06:40 +02:00
Daan De Meyer ff4fe9dee2 meson: Properly check dependencies of mkosi target
Let's insist on mkosi being found if the integration-tests option
is enabled and let's only add dependencies on systemd-journal-remote
and systemd-measure if they're being built. Drop ukify from the list
as its part of public_programs.
2024-04-25 17:06:00 +02:00
Daan De Meyer a721b93aaa mkosi: Add squashfs-tools
Required for various integration tests.
2024-04-25 17:06:00 +02:00
Lennart Poettering 5693208019
Merge pull request #32441 from poettering/rework-handoff-timestamp
pid1: rework handoff timestamp
2024-04-25 15:19:17 +02:00
Lennart Poettering a3d04419fd update NEWS 2024-04-25 15:18:07 +02:00