]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
16 months agoMerge pull request #27676 from ldv-alt/udevadm-verify
Yu Watanabe [Fri, 19 May 2023 20:41:05 +0000 (05:41 +0900)] 
Merge pull request #27676 from ldv-alt/udevadm-verify

udevadm-verify: add support for directory arguments

16 months agoMerge pull request #27701 from poettering/switch-root-same-file
Yu Watanabe [Fri, 19 May 2023 20:39:28 +0000 (05:39 +0900)] 
Merge pull request #27701 from poettering/switch-root-same-file

switch-root: use same_files() logic when checking whether new and old root dir are actually the same

16 months agoMerge pull request #27438 from bluca/dump_ratelimit
Luca Boccassi [Fri, 19 May 2023 20:29:58 +0000 (21:29 +0100)] 
Merge pull request #27438 from bluca/dump_ratelimit

manager: restrict Dump*() to privileged callers or ratelimit

16 months agonamespace-util: use inode_same_at() instead of FORMAT_PROC_FD_PATH() 27701/head
Lennart Poettering [Fri, 19 May 2023 12:50:15 +0000 (14:50 +0200)] 
namespace-util: use inode_same_at() instead of FORMAT_PROC_FD_PATH()

Doesn't matter much, but this makes it leas magic and independent of
/proc/ mounts. (Well, it actually doesn't, since the right-hand path is
also in /proc/, but still...

16 months agostat-util: rename files_same() → inode_same()
Lennart Poettering [Fri, 19 May 2023 12:47:37 +0000 (14:47 +0200)] 
stat-util: rename files_same() → inode_same()

Let's be more accurate about what this function does: it checks whether
the underlying reported inode is the same. Internally, this already uses
a better named stat_inode_same() call, hence let's similarly name the
wrapping function following the same logic.

Similar for files_same_at() and path_equal_or_same_files().

No code changes, just some renaming.

16 months agoswitch-root: check if old and new root fs is same via files_same_at()
Lennart Poettering [Tue, 16 May 2023 12:57:20 +0000 (14:57 +0200)] 
switch-root: check if old and new root fs is same via files_same_at()

16 months agostat-util: add _at() variant for files_same()
Lennart Poettering [Mon, 15 May 2023 19:20:17 +0000 (21:20 +0200)] 
stat-util: add _at() variant for files_same()

16 months agojournalctl: make --follow work with --merge again
Frantisek Sumsal [Fri, 19 May 2023 07:17:29 +0000 (09:17 +0200)] 
journalctl: make --follow work with --merge again

Set --boot with --follow only if it's not already set and if --merge is
not used, since it's not compatible with --boot.

Follow-up to 2dd9285bac.
Resolves: #24565

16 months agoMerge pull request #27700 from poettering/switch-root-sync
Lennart Poettering [Fri, 19 May 2023 14:27:23 +0000 (07:27 -0700)] 
Merge pull request #27700 from poettering/switch-root-sync

switch-root: add sync() before getting rid of auxiliary mounts of old root

16 months agomanager: restrict Dump*() to privileged callers or ratelimit 27438/head
Luca Boccassi [Thu, 27 Apr 2023 22:23:30 +0000 (23:23 +0100)] 
manager: restrict Dump*() to privileged callers or ratelimit

Dump*() methods can take quite some time due to the amount of data to
serialize, so they can potentially stall the manager. Make them
privileged, as they are debugging tools anyway. Use a new 'dump'
capability for polkit, and the 'reload' capability for SELinux, as
that's also non-destructive but slow.

If the caller is not privileged, allow it but rate limited to 10 calls
every 10 minutes.

16 months agoratelimit: add ratelimit_left helper
Luca Boccassi [Fri, 28 Apr 2023 12:10:23 +0000 (13:10 +0100)] 
ratelimit: add ratelimit_left helper

16 months agoMerge pull request #27698 from mrc0mmand/test-tweaks
Frantisek Sumsal [Fri, 19 May 2023 13:29:35 +0000 (15:29 +0200)] 
Merge pull request #27698 from mrc0mmand/test-tweaks

test: a couple of performance-related tweaks

16 months agoswitch-root: sync() before MNT_DETACH unmounting all old mounts 27700/head
Lennart Poettering [Fri, 19 May 2023 12:22:14 +0000 (14:22 +0200)] 
switch-root: sync() before MNT_DETACH unmounting all old mounts

As discussed here:

https://github.com/systemd/systemd/pull/27670#discussion_r1196716794

16 months agotree-wide: remove (void) cast around sync()
Lennart Poettering [Fri, 19 May 2023 12:21:21 +0000 (14:21 +0200)] 
tree-wide: remove (void) cast around sync()

The call is void anyway, it doesn't return an failure indication. Hence,
no need to cast void to (void)...

(We got this right in most cases, but forgot some)

16 months agoupdate TODO
Lennart Poettering [Fri, 19 May 2023 11:37:22 +0000 (13:37 +0200)] 
update TODO

16 months agoMerge pull request #27670 from poettering/switch-root-umount-all
Lennart Poettering [Fri, 19 May 2023 12:03:23 +0000 (05:03 -0700)] 
Merge pull request #27670 from poettering/switch-root-umount-all

umount all mounts during MS_MOVE switch root

16 months agotest: build the SELinux test module on the host 27698/head
Frantisek Sumsal [Fri, 19 May 2023 09:45:11 +0000 (11:45 +0200)] 
test: build the SELinux test module on the host

Let's save some time and build the SELinux test module on the host
instead of a possibly unaccelerated VM. This brings the runtime of
TEST-06-SELINUX from ~12 minutes down to a ~1 minute.

16 months agotest: drop generated stuff from the final coverage report
Frantisek Sumsal [Fri, 19 May 2023 09:07:07 +0000 (11:07 +0200)] 
test: drop generated stuff from the final coverage report

Let's drop stuff from the current $BUILD_DIR from the final coverage
report, as it's all generated files (mostly gperf) which we don't
really care about and it makes the Coveralls report confusing, since it
reports "source not available" for all such files.

16 months agotest: make the stress test slightly less stressful on slower machines
Frantisek Sumsal [Fri, 19 May 2023 08:48:15 +0000 (10:48 +0200)] 
test: make the stress test slightly less stressful on slower machines

Without acceleration this part of the test takes over 10 minutes (!),
which feels quite unnecessary. Let's cut down the number of stuff we
dump to the journal in such case, but keep the original value if we run
with acceleration (since in that case it takes less than 10 seconds).

16 months agocore/device: downgrade error when units specified in SYSTEMD_WANTS= not found
Yu Watanabe [Thu, 18 May 2023 20:27:46 +0000 (05:27 +0900)] 
core/device: downgrade error when units specified in SYSTEMD_WANTS= not found

Closes #27693.

16 months agounit: add conditions and deps to make oomd.socket and .service consistent
Yu Watanabe [Thu, 18 May 2023 19:47:34 +0000 (04:47 +0900)] 
unit: add conditions and deps to make oomd.socket and .service consistent

Fixes #27690.

16 months agoMerge pull request #27686 from keszybz/make-boot-output-nicer
Yu Watanabe [Thu, 18 May 2023 18:50:45 +0000 (03:50 +0900)] 
Merge pull request #27686 from keszybz/make-boot-output-nicer

Make boot output nicer

16 months agohwdb: fix Positivo CG15D key toggle touchpad and programmable keys (#27689)
Edson Juliano Drosdeck [Thu, 18 May 2023 18:06:42 +0000 (14:06 -0400)] 
hwdb: fix Positivo CG15D key toggle touchpad and programmable keys (#27689)

16 months agoMerge pull request #27685 from keszybz/the-semiannual-excercise-in-output-narrowing
Yu Watanabe [Thu, 18 May 2023 18:04:47 +0000 (03:04 +0900)] 
Merge pull request #27685 from keszybz/the-semiannual-excercise-in-output-narrowing

The semiannual excercise in output narrowing

16 months agoMerge pull request #27684 from mrc0mmand/more-nspawn-tests
Yu Watanabe [Thu, 18 May 2023 18:00:54 +0000 (03:00 +0900)] 
Merge pull request #27684 from mrc0mmand/more-nspawn-tests

test: further extend systemd-nspawn coverage

16 months agoudevadm-verify: add support for directory arguments 27676/head
Dmitry V. Levin [Wed, 17 May 2023 14:00:00 +0000 (14:00 +0000)] 
udevadm-verify: add support for directory arguments

When an argument specified to udevadm verify is a directory,
verify all *.rules files in that directory.

Suggested-by: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
16 months agoudev-rules: avoid issuing redundant diagnostics in verify mode
Dmitry V. Levin [Thu, 18 May 2023 17:00:00 +0000 (17:00 +0000)] 
udev-rules: avoid issuing redundant diagnostics in verify mode

When udevadm verify is given an argument that doesn't point to an
existing file, there used to be two diagnostics messages, the first one
at a warning level, and the second one at an error level:

$ build/udevadm verify /no/such/directory
Failed to open /no/such/directory, ignoring: No such file or directory
Failed to parse rules file /no/such/directory: No such file or directory

Fix this by issuing just the error message.

16 months agointegration test: pass 'noresume' to qemu
Luca Boccassi [Thu, 18 May 2023 12:08:56 +0000 (13:08 +0100)] 
integration test: pass 'noresume' to qemu

When running on Debian/Ubuntu, I get a minute delay or so on every boot
because the local initramfs tries to resume from hibernation. This is
not really useful here, so always skip it

16 months agotestsuite-17.11.sh: fix assert_1()
Dmitry V. Levin [Thu, 18 May 2023 12:00:00 +0000 (12:00 +0000)] 
testsuite-17.11.sh: fix assert_1()

Fix assert_1() to exit with an error status in case of a failed assertion.

16 months agotest: wrap setfacl when running with ASan 27684/head
Frantisek Sumsal [Thu, 18 May 2023 15:30:36 +0000 (17:30 +0200)] 
test: wrap setfacl when running with ASan

16 months agooomd: shorten message 27686/head
Zbigniew Jędrzejewski-Szmek [Thu, 18 May 2023 14:29:20 +0000 (16:29 +0200)] 
oomd: shorten message

We can make the message shorter and more direct without changing
the meaning.

16 months agosd-bus,sd-event: allow querying of description even after fork
Zbigniew Jędrzejewski-Szmek [Thu, 18 May 2023 15:05:41 +0000 (17:05 +0200)] 
sd-bus,sd-event: allow querying of description even after fork

This in unnecessarilly unpleasant: the code might report about a bus
connection, e.g. in an error message or assert. Let's let it query
the name of the object.

This partially reverts f4b2933ee7890e5d414ab266d8586f19027a2bd9.

16 months agosd-bus: do not assert if bus description is not set
Zbigniew Jędrzejewski-Szmek [Thu, 18 May 2023 15:03:53 +0000 (17:03 +0200)] 
sd-bus: do not assert if bus description is not set

The code has an explicit fallback using runtime_scope_to_string(), which
is also documented in the man page. So -ENXIO should only be returned when
the fallback doesn't work, i.e. bus->runtime_scope == -EINVAL.

Fixup for f4b2933ee7890e5d414ab266d8586f19027a2bd9.

This should fix the following errors during boot:
May 18 16:05:37 fedora systemd-update-utmp[263]: Assertion 'bus->description' failed at src/libsystemd/sd-bus/sd-bus.c:4201, function sd_bus_get_description(). Ignoring.
May 18 16:05:38 fedora systemctl[360]: Assertion 'bus->description' failed at src/libsystemd/sd-bus/sd-bus.c:4201, function sd_bus_get_description(). Ignoring.
May 18 16:05:38 fedora systemctl[363]: Assertion 'bus->description' failed at src/libsystemd/sd-bus/sd-bus.c:4201, function sd_bus_get_description(). Ignoring.
May 18 16:05:38 fedora systemd-update-utmp[372]: Assertion 'bus->description' failed at src/libsystemd/sd-bus/sd-bus.c:4201, function sd_bus_get_description(). Ignoring.
May 18 16:05:38 fedora @ystemctl[387]: Assertion 'bus->description' failed at src/libsystemd/sd-bus/sd-bus.c:4201, function sd_bus_get_description(). Ignoring.
May 18 16:05:40 fedora systemd-update-utmp[477]: Assertion 'bus->description' failed at src/libsystemd/sd-bus/sd-bus.c:4201, function sd_bus_get_description(). Ignoring.
May 18 16:05:41 fedora systemd-homed[509]: Assertion 'bus->description' failed at src/libsystemd/sd-bus/sd-bus.c:4201, function sd_bus_get_description(). Ignoring.
May 18 16:05:41 fedora systemd-logind[510]: Assertion 'bus->description' failed at src/libsystemd/sd-bus/sd-bus.c:4201, function sd_bus_get_description(). Ignoring.
May 18 16:05:41 fedora systemd-update-utmp[529]: Assertion 'bus->description' failed at src/libsystemd/sd-bus/sd-bus.c:4201, function sd_bus_get_description(). Ignoring.
May 18 16:05:42 fedora systemd-user-runtime-dir[531]: Assertion 'bus->description' failed at src/libsystemd/sd-bus/sd-bus.c:4201, function sd_bus_get_description(). Ignoring.
May 18 16:05:42 fedora systemctl[542]: Assertion 'bus->description' failed at src/libsystemd/sd-bus/sd-bus.c:4201, function sd_bus_get_description(). Ignoring.
May 18 16:05:42 fedora systemd-hostnamed[556]: Assertion 'bus->description' failed at src/libsystemd/sd-bus/sd-bus.c:4201, function sd_bus_get_description(). Ignoring.

16 months agomeson: rename "dist-check" suite to "dist" 27685/head
Zbigniew Jędrzejewski-Szmek [Thu, 18 May 2023 15:16:33 +0000 (17:16 +0200)] 
meson: rename "dist-check" suite to "dist"

*Now* one of those tests is the longest, let's make them a bit shorter.

16 months agomeson: rename "fuzzers" suite to "fuzz"
Zbigniew Jędrzejewski-Szmek [Thu, 18 May 2023 15:14:50 +0000 (17:14 +0200)] 
meson: rename "fuzzers" suite to "fuzz"

Fuzz tests have all the longest names, so by making this name
shorter, we save three columns of screen real estate.

16 months agotest: don't mount /sys & /proc if already mounted
Frantisek Sumsal [Thu, 18 May 2023 13:52:43 +0000 (15:52 +0200)] 
test: don't mount /sys & /proc if already mounted

16 months agonspawn: make the error message less confusing
Frantisek Sumsal [Thu, 18 May 2023 13:14:20 +0000 (15:14 +0200)] 
nspawn: make the error message less confusing

by not printing (null) and dropping the extraneous slash, e.g.:

systemd-nspawn[2049]: Failed to resolve (null)//proc: Permission denied

16 months agotest: add a couple of tests for nspawn config files
Frantisek Sumsal [Wed, 17 May 2023 20:36:07 +0000 (22:36 +0200)] 
test: add a couple of tests for nspawn config files

16 months agonspawn: correctly parse a list of interfaces
Frantisek Sumsal [Thu, 18 May 2023 10:54:15 +0000 (12:54 +0200)] 
nspawn: correctly parse a list of interfaces

Interface=/MACVLAN=/IPVLAN= nspawn options take a _list_ of interface
names - this was recently enhanced by 2f091b1b49 to support interface
pairs. Unfortunately, this also introduced a regression where we don't
parse the list as a list, but just as a single value. For example,
having `Interface=sd-shared1 sd-shared2` in an nspawn config file would
throw:

systemd-nspawn[898]: Network interface, interface name not valid: sd-shared1 sd-shared2
systemd-nspawn[898]: /run/systemd/nspawn/testsuite-13.nspawn-settings.1po.nspawn:41: Failed to parse file: Invalid argument

Follow-up to 2f091b1b49.

16 months agotest: create nspawn config files when collecting coverage
Frantisek Sumsal [Wed, 17 May 2023 19:49:20 +0000 (21:49 +0200)] 
test: create nspawn config files when collecting coverage

Which bind-mounts the $BUILD_DIR into the container. This whole coverage
thing is getting slightly ridiculous.

Follow-up to 3b2823a749, but for non-machinectl containers.

16 months agotest: cover --bind-user=
Frantisek Sumsal [Wed, 17 May 2023 13:35:10 +0000 (15:35 +0200)] 
test: cover --bind-user=

16 months agotest: add a couple of sanity tests for --port=
Frantisek Sumsal [Wed, 17 May 2023 12:57:50 +0000 (14:57 +0200)] 
test: add a couple of sanity tests for --port=

16 months agotest: drop "check" from test case names
Frantisek Sumsal [Wed, 17 May 2023 11:57:37 +0000 (13:57 +0200)] 
test: drop "check" from test case names

16 months agotest: exercise a couple of error paths in nspawn's OCI code as well
Frantisek Sumsal [Wed, 17 May 2023 11:09:02 +0000 (13:09 +0200)] 
test: exercise a couple of error paths in nspawn's OCI code as well

16 months agonspawn: clean up & unify cleanup handlers
Frantisek Sumsal [Wed, 17 May 2023 09:06:40 +0000 (11:06 +0200)] 
nspawn: clean up & unify cleanup handlers

Also, make them follow our naming conventions.

16 months agofuzz: rename long samples
Zbigniew Jędrzejewski-Szmek [Wed, 17 May 2023 16:24:49 +0000 (18:24 +0200)] 
fuzz: rename long samples

With those long filenames, output doesn't fit on the terminal.

16 months agomkosi: use wildcard to shorten things
Zbigniew Jędrzejewski-Szmek [Thu, 11 May 2023 19:22:08 +0000 (21:22 +0200)] 
mkosi: use wildcard to shorten things

16 months agoRevert "resolved: address DVE-2018-0001"
Dimitri John Ledkov [Thu, 30 Mar 2023 20:58:40 +0000 (21:58 +0100)] 
Revert "resolved: address DVE-2018-0001"

DVE-2018-0001 has been fixed by the vendor, and this workaround is no longer
needed. Removal of this workaround improves performance as queries used to be
retried more than necessory.

This reverts 1ed4e584f3a03f47d2313314b6b5a78c9dc6f135.
This reverts https://github.com/systemd/systemd/pull/18638

Keep .clamp_feature_level_servfail name, as imho it is more descriptive than
just .clamp_feature_level, especially if we ever need to add similar
workarounds as the one we had for DVE-2018-0001.

However note that there is another retry which was added in
8a33aa199dc1cea14494469ac9d7d08dc6721df1 - seems to be working around Stubby
resolver behaviour.

Fixes: #26967
16 months agonspawn: use ASSERT_PTR() more
Frantisek Sumsal [Wed, 17 May 2023 08:53:57 +0000 (10:53 +0200)] 
nspawn: use ASSERT_PTR() more

16 months agonss-resolve: report EAI_NODATA
Mateusz Poliwczak [Wed, 17 May 2023 15:55:42 +0000 (17:55 +0200)] 
nss-resolve: report EAI_NODATA

16 months agobusctl: Add space before "tree" paths for copying
Matt Johnston [Thu, 18 May 2023 04:28:06 +0000 (12:28 +0800)] 
busctl: Add space before "tree" paths for copying

This allows a double-click on the path in a terminal to select the
whole path. Otherwise the leading '-' character is also included in
the copied path.

```
New output:
./busctl tree org.freedesktop.network1
`- /org
  `- /org/freedesktop
    |- /org/freedesktop/LogControl1
    `- /org/freedesktop/network1
      |- /org/freedesktop/network1/link
      | |- /org/freedesktop/network1/link/_31
      | |- /org/freedesktop/network1/link/_32
```

16 months agoMerge pull request #27673 from YHNdnzj/restartsteps-transient
Yu Watanabe [Thu, 18 May 2023 08:54:33 +0000 (17:54 +0900)] 
Merge pull request #27673 from YHNdnzj/restartsteps-transient

core,bus-unit-util: add missing RestartSteps and RestartMaxDelaySec to bus_append_service_property

16 months agoREADME: drop busybox requirement
Yu Watanabe [Thu, 18 May 2023 08:49:41 +0000 (17:49 +0900)] 
README: drop busybox requirement

Follow-up for 5656759d0617594ee8e850a258a21d3e187bf02c.

16 months agoMerge pull request #27677 from mrc0mmand/test-followups
Yu Watanabe [Thu, 18 May 2023 08:47:02 +0000 (17:47 +0900)] 
Merge pull request #27677 from mrc0mmand/test-followups

test: get rid of the busybox stuff

16 months agoRevert (partially) "man: Clarify when OnFailure= activates after restarts (#7646)"
Mike Yuan [Wed, 17 May 2023 15:47:53 +0000 (23:47 +0800)] 
Revert (partially) "man: Clarify when OnFailure= activates after restarts (#7646)"

This reverts part of commit bd2538b50ba283c9ce39142d5d16d90184a55b90,
specifically changes to the description of service state between auto-restarts.

Fixes #27594

16 months agotest: explicitly use bash 27677/head
Frantisek Sumsal [Wed, 17 May 2023 18:14:05 +0000 (20:14 +0200)] 
test: explicitly use bash

To avoid unexpected surprised in CIs with different default shell.

16 months agotest: get rid of the busybox stuff
Frantisek Sumsal [Wed, 17 May 2023 17:10:55 +0000 (19:10 +0200)] 
test: get rid of the busybox stuff

It already required a lot of workarounds, since the busybox utilities
often work differently than their "full" counterparts, and putting
the container together using our "tools" is quite simple anyway.

16 months agobus-unit-util: add missing RestartSteps and RestartMaxDelaySec to bus_append_service_... 27673/head
Mike Yuan [Wed, 17 May 2023 15:33:05 +0000 (23:33 +0800)] 
bus-unit-util: add missing RestartSteps and RestartMaxDelaySec to bus_append_service_property

Follow-up for be1adc27fc61ba723bd0392199f7b82ef9f1c970

16 months agocore: rename RestartSecMax to RestartMaxDelaySec
Mike Yuan [Wed, 17 May 2023 16:15:23 +0000 (00:15 +0800)] 
core: rename RestartSecMax to RestartMaxDelaySec

16 months agotest: mangle the machine ID only for the QEMU test part
Frantisek Sumsal [Wed, 17 May 2023 07:05:04 +0000 (09:05 +0200)] 
test: mangle the machine ID only for the QEMU test part

systemd-nspawn doesn't like invalid machine IDs and refuses to boot with one:

TEST-74-AUX-UTILS RUN: Tests for auxiliary utilities
...
Spawning container TEST-74-AUX-UTILS--3 on /var/tmp/systemd-test-TEST-74-AUX-UTILS_3/root.
Press Ctrl-] three times within 1s to kill container.
Failed to read machine ID from container image: Structure needs cleaning
E: nspawn failed with exit code 1

Follow-up to b4d42a82eb.

16 months agoMerge pull request #27669 from keszybz/man-fixes-254
Zbigniew Jędrzejewski-Szmek [Wed, 17 May 2023 12:12:33 +0000 (14:12 +0200)] 
Merge pull request #27669 from keszybz/man-fixes-254

Some simple man page fixes to reduce the list of issues tagged for v254

16 months agoMerge pull request #27671 from keszybz/manpage-fixes-254-2
Zbigniew Jędrzejewski-Szmek [Wed, 17 May 2023 12:12:08 +0000 (14:12 +0200)] 
Merge pull request #27671 from keszybz/manpage-fixes-254-2

man: fixes for assorted issues reported by the manpage-l10n project

16 months agoman: fixes for assorted issues reported by the manpage-l10n project 27671/head
Zbigniew Jędrzejewski-Szmek [Wed, 17 May 2023 10:24:04 +0000 (12:24 +0200)] 
man: fixes for assorted issues reported by the manpage-l10n project

Fixes #26761.

16 months agoman/tmpfiles: fix off-by-one in example 27669/head
Zbigniew Jędrzejewski-Szmek [Wed, 17 May 2023 09:16:56 +0000 (11:16 +0200)] 
man/tmpfiles: fix off-by-one in example

Reported and diagnosed by gitterman. Fixes #26617.

16 months agoman: explain allowed values for /sys/power/{disk,state}
Zbigniew Jędrzejewski-Szmek [Wed, 17 May 2023 09:12:32 +0000 (11:12 +0200)] 
man: explain allowed values for /sys/power/{disk,state}

Also fix the grammar: "neither" can only be used with two values, and
here we have an inderminate number >= 1.

Fixes #26460.

16 months agoman: say that ProtectClock= also affects reads
Zbigniew Jędrzejewski-Szmek [Wed, 17 May 2023 07:52:17 +0000 (09:52 +0200)] 
man: say that ProtectClock= also affects reads

Fixes #26413: the docs said that the filter prevents writes, but it just a
filter at the system call level, and some of those calls are used for writing
and reading. This is confusing esp. when a higher level library call like
ntp_gettime() is denied.

I don't think it's realistic that we'll make the filter smarter in the near
future, so let's change the docs to describe the implementation.

Also, split out the advice part into a separate paragraph.

16 months agoswitch-root: when switching root via MS_MOVE unmount all remaining mounts first 27670/head
Lennart Poettering [Mon, 15 May 2023 19:25:12 +0000 (21:25 +0200)] 
switch-root: when switching root via MS_MOVE unmount all remaining mounts first

Let's try to unmount anything left, since if we don't they will remain
as "shadow" mounts, hidden underneath our new root.

This is only necessary when we transition into a new root via MS_MOVE.
If we do so via pivot_root() this is not necessary as the kernel will
get rid of the mounts anyway for us.

16 months agotest: add test for umount_recursive()
Lennart Poettering [Tue, 16 May 2023 13:41:48 +0000 (15:41 +0200)] 
test: add test for umount_recursive()

16 months agomount-util: make "prefix" parameter optional for umount_recursive()
Lennart Poettering [Mon, 15 May 2023 19:23:55 +0000 (21:23 +0200)] 
mount-util: make "prefix" parameter optional for umount_recursive()

When switching root via MS_MOVE there's no need to filter the mount
table by prefix

16 months agomount-util: extend umount_recursive() to optionally take list of dirs to exclude...
Lennart Poettering [Tue, 16 May 2023 13:54:10 +0000 (15:54 +0200)] 
mount-util: extend umount_recursive() to optionally take list of dirs to exclude from the unmounting

16 months agomount-util: keep fd to /proc/self/mountinfo continously open in umount_recursive()
Lennart Poettering [Tue, 16 May 2023 13:52:33 +0000 (15:52 +0200)] 
mount-util: keep fd to /proc/self/mountinfo continously open in umount_recursive()

That way, if we end up unmounting /proc/ in our loop we can still
operate correctly, since we don't have to go through /proc/ again to
open the mount table again.

16 months agoMerge pull request #27664 from mrc0mmand/test-merge
Yu Watanabe [Wed, 17 May 2023 00:53:58 +0000 (09:53 +0900)] 
Merge pull request #27664 from mrc0mmand/test-merge

test: let's merge more tests together

16 months agotest: move runas() to the shared utility library 27664/head
Frantisek Sumsal [Tue, 16 May 2023 20:41:03 +0000 (22:41 +0200)] 
test: move runas() to the shared utility library

16 months agotest: make shellcheck happy again
Frantisek Sumsal [Tue, 16 May 2023 18:55:45 +0000 (20:55 +0200)] 
test: make shellcheck happy again

No functional changes.

16 months agotest: merge TEST-48-START-STOP-NO-RELOAD into TEST-23-UNIT-FILE
Frantisek Sumsal [Tue, 16 May 2023 18:41:35 +0000 (20:41 +0200)] 
test: merge TEST-48-START-STOP-NO-RELOAD into TEST-23-UNIT-FILE

16 months agotest: merge TEST-49-RUNTIME-BIND-PATHS into TEST-23-UNIT-FILE
Frantisek Sumsal [Tue, 16 May 2023 18:31:49 +0000 (20:31 +0200)] 
test: merge TEST-49-RUNTIME-BIND-PATHS into TEST-23-UNIT-FILE

16 months agotest: clean up test artifacts
Frantisek Sumsal [Tue, 16 May 2023 17:56:30 +0000 (19:56 +0200)] 
test: clean up test artifacts

So we don't run into unexpected fails when two tests use the same paths.

16 months agotest: merge TEST-28-PERCENTJ-WANTEDBY into TEST-23-UNIT-FILE
Frantisek Sumsal [Tue, 16 May 2023 17:45:56 +0000 (19:45 +0200)] 
test: merge TEST-28-PERCENTJ-WANTEDBY into TEST-23-UNIT-FILE

16 months agotest: merge TEST-56-EXIT-TYPE into TEST-19-CGROUP
Frantisek Sumsal [Tue, 16 May 2023 17:26:42 +0000 (19:26 +0200)] 
test: merge TEST-56-EXIT-TYPE into TEST-19-CGROUP

And clean it up a bit.

16 months agotest: rename TEST-19-DELEGATE to TEST-19-CGROUP
Frantisek Sumsal [Tue, 16 May 2023 17:17:40 +0000 (19:17 +0200)] 
test: rename TEST-19-DELEGATE to TEST-19-CGROUP

And clean it up a bit.

16 months agotest: introduce get_cgroup_hierarchy()
Frantisek Sumsal [Tue, 16 May 2023 17:11:51 +0000 (19:11 +0200)] 
test: introduce get_cgroup_hierarchy()

16 months agotest: rename assert.sh to util.sh
Frantisek Sumsal [Tue, 16 May 2023 17:09:13 +0000 (19:09 +0200)] 
test: rename assert.sh to util.sh

So we can extend it with additional utility functions without making it
confusing.

No functional change.

16 months agotest: merge TEST-33-CLEAN-UNIT into TEST-23-UNIT-FILE
Frantisek Sumsal [Tue, 16 May 2023 16:50:43 +0000 (18:50 +0200)] 
test: merge TEST-33-CLEAN-UNIT into TEST-23-UNIT-FILE

16 months agotest: merge TEST-27-STDOUTFILE into TEST-23-UNIT-FILE
Frantisek Sumsal [Tue, 16 May 2023 16:42:14 +0000 (18:42 +0200)] 
test: merge TEST-27-STDOUTFILE into TEST-23-UNIT-FILE

16 months agotest: merge TEST-14-MACHINE-ID into TEST-74-AUX-UTILS
Frantisek Sumsal [Tue, 16 May 2023 16:31:45 +0000 (18:31 +0200)] 
test: merge TEST-14-MACHINE-ID into TEST-74-AUX-UTILS

16 months agoman/systemd-sysext: correct explanation of confexts directories
Antonio Alvarez Feijoo [Tue, 16 May 2023 14:49:28 +0000 (16:49 +0200)] 
man/systemd-sysext: correct explanation of confexts directories

16 months agoswitch-root: add a comment regarding the safety limits of rm_rf_children()
Lennart Poettering [Mon, 15 May 2023 19:31:38 +0000 (21:31 +0200)] 
switch-root: add a comment regarding the safety limits of rm_rf_children()

16 months agoMerge pull request #27606 from YHNdnzj/loginctl-list-show-state
Yu Watanabe [Tue, 16 May 2023 16:41:13 +0000 (01:41 +0900)] 
Merge pull request #27606 from YHNdnzj/loginctl-list-show-state

loginctl: list-{users,sessions}: add a column for showing state

16 months agoMerge pull request #27655 from yuwata/udev-net-assign-alternative-names-only-on-add...
Yu Watanabe [Tue, 16 May 2023 16:39:40 +0000 (01:39 +0900)] 
Merge pull request #27655 from yuwata/udev-net-assign-alternative-names-only-on-add-event

udev/net: assign alternative names only on add event

16 months agoMerge pull request #27651 from mrc0mmand/more-nspawn-tests
Frantisek Sumsal [Tue, 16 May 2023 15:26:25 +0000 (17:26 +0200)] 
Merge pull request #27651 from mrc0mmand/more-nspawn-tests

nspawn: OCI related fixes & tests

16 months agoMerge pull request #27659 from yuwata/memfd-seal
Mike Yuan [Tue, 16 May 2023 14:00:57 +0000 (22:00 +0800)] 
Merge pull request #27659 from yuwata/memfd-seal

memfd-util: handle F_SEAL_EXEC flag

16 months agoMerge pull request #27638 from YHNdnzj/upheldby-unit-file
Mike Yuan [Tue, 16 May 2023 13:53:24 +0000 (21:53 +0800)] 
Merge pull request #27638 from YHNdnzj/upheldby-unit-file

unit-file: support UpheldBy= in [Install] settings (adding Upholds= deps from .upholds/)

16 months agoMerge pull request #27573 from poettering/sd-bus-description
Lennart Poettering [Tue, 16 May 2023 13:46:29 +0000 (06:46 -0700)] 
Merge pull request #27573 from poettering/sd-bus-description

sd-bus: pass bus description (and comm name) to per via socket address binding on AF_UNIX

16 months agoMerge pull request #27648 from poettering/common-dissect-dir
Lennart Poettering [Tue, 16 May 2023 12:26:48 +0000 (05:26 -0700)] 
Merge pull request #27648 from poettering/common-dissect-dir

pid1: add common root dir inode to mount disk images to in private namespaces

16 months agoMerge pull request #27647 from poettering/mount-setup-tweaklets
Lennart Poettering [Tue, 16 May 2023 12:26:09 +0000 (05:26 -0700)] 
Merge pull request #27647 from poettering/mount-setup-tweaklets

mount-setup: minor tweaks

16 months agoMerge pull request #27658 from poettering/base-fs-run
Lennart Poettering [Tue, 16 May 2023 12:25:43 +0000 (05:25 -0700)] 
Merge pull request #27658 from poettering/base-fs-run

base-filesystem: also set up /run/ mount point if missing

16 months agoman: indicate that the JOB parameter to "systemctl cancel" is optional
Lennart Poettering [Tue, 16 May 2023 07:35:39 +0000 (09:35 +0200)] 
man: indicate that the JOB parameter to "systemctl cancel" is optional

As per:

https://social.treehouse.systems/@grawity/110376583742207755

16 months agotest: add test for state in loginctl list-{users,sessions} 27606/head
Mike Yuan [Mon, 15 May 2023 05:45:33 +0000 (13:45 +0800)] 
test: add test for state in loginctl list-{users,sessions}

16 months agologinctl: list-sessions: also show state
Mike Yuan [Thu, 11 May 2023 05:21:37 +0000 (13:21 +0800)] 
loginctl: list-sessions: also show state

16 months agologinctl: list-sessions: minor modernization
Mike Yuan [Thu, 11 May 2023 05:17:59 +0000 (13:17 +0800)] 
loginctl: list-sessions: minor modernization