Commit Graph
67177 Commits
Author SHA1 Message Date
Yu Watanabe c22dcd67e1 tpm2-util: use json_variant_append_array() 2023-07-13 17:06:29 +09:00
Yu Watanabe 684bce3d54 busctl: use json_variant_append_array() 2023-07-13 17:03:13 +09:00
Lennart Poettering d89457a145 loop-write: do strlen() implicitly if size is specified as SIZE_MAX
This reduces repetition in the function calls, since quite often we
write out strings with loop_write().

Noticed while reviewing #28077.
2023-07-13 09:59:28 +09:00
Susant Sahani fc4a7f13bb ndisc: honour MTU for onlink prefix
Fixes #26520
2023-07-13 09:45:38 +09:00
Luca Boccassi 37daa74bb8 Merge pull request #28368 from mrc0mmand/test-fail-on-error
test: a couple of clean ups
2023-07-12 23:51:42 +01:00
Roger Gammans 681295c060 Add alternate name for MX Ergo as found on some devices
Fixes #28349
2023-07-12 23:50:35 +01:00
Lennart Poettering dbc62e590a update TODO 2023-07-12 23:23:42 +02:00
Daan De Meyer 608aa606cf Merge pull request #28365 from DaanDeMeyer/udevadm-query
Various fixes and improvements
2023-07-12 21:48:04 +02:00
Daan De Meyer a9e536a6bc logs-show: Rename json_data to JsonData and add typedef 2023-07-12 20:05:20 +02:00
Daan De Meyer ee9d31a608 json: free array in json_variant_unref_many()
This allows using it with CLEANUP_ARRAY(). For the 2 call sites
where we don't need to free the array, we do a regular for loop
calling json_variant_unref() instead.
2023-07-12 20:05:20 +02:00
Daan De Meyer 2507731374 basic: Fix color + underline functions/macros
We currently concatenate ANSI_UNDERLINE to the color of our choice
in DEFINE_ANSI_FUNC_UNDERLINE() and DEFINE_ANSI_FUNC_UNDERLINE_256().
The first thing that ANSI_UNDERLINE does is reset all previous ansi
escape sequences, so you just get underlining without any colors.

Let's fix the issue by actually concatenating _UNDERLINE to the given
color macro name so this works properly.

Also add missing color macros that this uncovered.
2023-07-12 20:05:20 +02:00
Daan De Meyer a1af83728f device-util: Declare iterator variables inline 2023-07-12 20:05:18 +02:00
Mike Yuan 39939e7d02 core: refuse late merge only for anchor job when JOB_RESTART_DEPENDENCIES
Follow-up for 2a39b91459

The mentioned change makes all jobs in the transaction unmergeable
if mode == JOB_RESTART_DEPENDENCIES, but we only want the anchor job
to be re-enqueued.
2023-07-12 18:25:45 +02:00
Lennart Poettering 8620854aa1 Merge pull request #28344 from YHNdnzj/compare-device-node
hibernate-resume: add & use devnode_same to compare device nodes
2023-07-12 17:59:28 +02:00
Micah Abbott 2262cbf9fd docs: cleanups to ROOT_STORAGE_DAEMONS
There were a couple spelling/grammatical errors in the docs that made
it hard to read and understand parts of this doc. I cleaned up those
errors and reflowed the line breaks to keep to the 80 char limit.
2023-07-12 15:49:05 +01:00
Daan De Meyer 076deab75d mkosi: Make sure we build kernel headers
Required for building kernel selftests
2023-07-12 15:07:15 +01:00
Frantisek Sumsal 07268394d6 test: unify /testok & /failed handling
And drop it where not necessary.
2023-07-12 16:03:40 +02:00
Frantisek Sumsal 74711e7a09 test: fail if we find units/tests in failed state
Instead of relying on the post-test /failed file check.
2023-07-12 16:01:05 +02:00
Frantisek Sumsal 438fcfdf6c test: drop redundant 'function' keyword 2023-07-12 16:01:05 +02:00
Frantisek Sumsal f3139ecd08 test: drop spurious whitespaces 2023-07-12 16:01:05 +02:00
Zbigniew Jędrzejewski-Szmek 84214541fa Revert "pid1: order units using TTYVHangup= after vconsole setup"
This reverts commit e019ea738d.

In the new approach, a lock on /dev/console will be used. This lock will solve
the issue for services which run in early boot. Services which run later are
ordered after sysinit.target, so they'll run much later anyway so this
automatic dependency is not useful. Let's remove it again to make the code
simpler.
2023-07-12 15:54:33 +02:00
Zbigniew Jędrzejewski-Szmek 6cfb3ebc60 units/systemd-firstboot: start the service after systemd-vconsole-setup.service
This way, we don't start user interaction before (or while) the configured
fonts are loading.

Tweak the comments a bit while at it.
2023-07-12 15:54:33 +02:00
Zbigniew Jędrzejewski-Szmek 3b2321f6ea units/systemd-vconsole-setup.service: improve title
"Setup" is a noun, and the expected order is "<adjective> <noun>".
("Set up" is the verb. But we want a noun here, so that we can say
e.g. "Starting Virtual Console Setup".)
2023-07-12 15:54:33 +02:00
Frantisek Sumsal c109cff9f9 test: copy out the necessary test data before we start overmounting stuff
Otherwise the get_testdata_dir() call fails if the source tree is under
/root (which is usually the case in CIs).

I got bitten by this after leaving the source tree under /root but moving the
$BUILD_DIR elsewhere. This used to work by accident, as load_testdata_env()
would try to read $BUILD_DIR/systemd-runtest.env, but would fail if the
$BUILD_DIR is also under /root and fall back to SYSTEMD_TEST_DATA
(/lib/systemd/tests/testdata), which usually exist as we install the just built
revision. However, if the $BUILD_DIR is outside of /root we'd read
$BUILD_DIR/systemd-runtest.env which contains
SYSTEMD_TEST_DATA=/path/to/source/tree/test and that source tree is not visible
once we overmount /root with tmpfs making the test fail:

/* test_run_tests_unprivileged */
Successfully forked off '(test-execute-unprivileged)' as PID 10672.
Changing mount flags / (MS_REMOUNT|MS_BIND "")...
Changing mount propagation / (MS_REC|MS_SHARED "")
Mounting tmpfs (tmpfs) on /dev/shm (MS_NOSUID|MS_NODEV "")...
Mounting tmpfs (tmpfs) on /root (MS_NOSUID|MS_NODEV "")...
Mounting tmpfs (tmpfs) on /tmp (MS_NOSUID|MS_NODEV "")...
Mounting tmpfs (tmpfs) on /var/tmp (MS_NOSUID|MS_NODEV "")...
Mounting tmpfs (tmpfs) on /var/lib (MS_NOSUID|MS_NODEV "")...
Mounting tmpfs (tmpfs) on /run/test-execute-unit-dir (MS_NOSUID|MS_NODEV "")...
ERROR: $SYSTEMD_TEST_DATA directory [/root/systemd/test] not accessible: No such file or directory
Assertion 'get_testdata_dir("test-execute/", &unit_dir) >= 0' failed at src/test/test-execute.c:1306, function prepare_ns(). Aborting.
(test-execute-unprivileged) terminated by signal ABRT.
2023-07-12 11:37:21 +00:00
Frantisek Sumsal e15ad182dd test: actually mount / read-only 2023-07-12 11:37:21 +00:00
Yu Watanabe 627cdcc785 tree-wide: fix typos reported by Fossies Codespell report 2023-07-12 10:14:50 +09:00
Yu Watanabe 16a07ffc64 man: move <varlistentry> in <variablelist> 2023-07-12 10:03:43 +09:00
Zbigniew Jędrzejewski-Szmek 28dd29dd95 hwdb: drop POINTINGSTICK_CONST_ACCEL
The TODO says we were supposed to do that in 2019–2020 (if I interpreted the
enigmatic notation correctly). The comment in hwdb said:
> DO NOT USE THIS PROPERTY. This property is kept for backwards
> compatibility. The only known consumer, libinput, stopped reading this
> property in version 1.9.0. No new entries for this property should be
> added.
… and we're currently on libinput-1.23.0.

Most likely there are no users, and even if they are, they'll just get a
slightly misbehaving pointingstick, which shouldn't be too bad.
2023-07-12 01:49:59 +02:00
Lennart Poettering 738e807e40 import-creds: don't import creds from SMBIOS/qemu in confidential VMs 2023-07-11 15:24:01 +01:00
Mike Yuan 0281927686 hibernate-resume: use devnode_same to compare device nodes
Addresses https://github.com/systemd/systemd/pull/28321#discussion_r1257866179

When devnode_same() fails we only debug log about it, because
the device nodes might not have appeared by the time the generator
is run.

Fixes #28340
2023-07-11 18:04:22 +08:00
Mike Yuan 2d5c53fc34 shared/device-nodes: add devnode_same 2023-07-11 18:01:49 +08:00
Mike Yuan e3c9e09383 path-util: make path_equal_or_inode_same static inline
No functional change, just refactoring.
2023-07-11 18:01:49 +08:00
Yu Watanabe 26b682e816 seccomp: add arm_fadvise64_64 to system-service group
fadvise64 and fadvise64_64 are already in the group, but arm_ version
was not.

Fixes #28350.
2023-07-11 11:54:09 +02:00
Lennart Poettering 08617bb2d9 Merge pull request #28348 from YHNdnzj/async-close-waitpid
shared/async: don't use WEXITED for waitpid()
2023-07-11 11:53:03 +02:00
Mike Yuan 898f4da326 shared/async: don't use WEXITED for waitpid()
Follow-up for c26d7837bb

waitpid() doesn't support WEXITED and returns -1 (EINVAL),
which results in the intermediate close process not getting
reaped.

Fixes https://github.com/systemd/systemd/issues/26744#issuecomment-1628240782
2023-07-11 12:08:09 +08:00
Mike Yuan f7b1d37c77 shared/async: prefix process name with sd- 2023-07-11 12:08:09 +08:00
Yu Watanabe 4b3b330a32 Merge pull request #28343 from poettering/daemon-reload-common
tree-wide: add common implementation of Reload() bus call to PID 1
2023-07-11 08:42:19 +09:00
Daan De Meyer 05dc415015 Merge pull request #28333 from DaanDeMeyer/tpm-support-dlopen
tpm2-util: Only assume system support if we can dlopen() the tpm libraries
2023-07-10 18:14:17 +02:00
Lennart Poettering 0c13daee66 tree-wide: drop trailing newline from various log calls
We generate this implicitly, hence we generally don't include it
explicitly.
2023-07-10 16:40:30 +02:00
Lennart Poettering a93993584d bus-unit-util: add common code for reloading PID 1
We have this very similar code in various places, and it#s not entirely
obvious (since we want a prolonged timeout for the reload), hence unify
this at one place.
2023-07-10 16:39:16 +02:00
Luca Boccassi e290bdb77b test-fstab-generator: use test_env
When running from the build directory systemd-detect-virt might not be installed,
so tell meson to set up the PATH accordingly to point to the build directory.

Fixes https://github.com/systemd/systemd/issues/28316
2023-07-10 15:29:38 +01:00
Luca Boccassi d75ec33ed2 sd-gpt: add missing SD_GPT_*NATIVE* defines for mips/mips64/parisc
We already had the arch-specific UUIDs defined, but they were not wired up
2023-07-10 15:28:28 +01:00
Luca Boccassi 3891fe0f23 Merge pull request #28308 from bluca/casting
Fix compilation on mipsel, ia64 and x32
2023-07-10 15:27:13 +01:00
Frantisek Sumsal fab73dad84 test: reorder the machinectl signal tests
So the multiple-machines tests run last to avoid a race where the
checked signal would get ignored while the stub init is still processing
the previous signals:

[   17.380417] testsuite-13.sh[376]: + machinectl reboot long-running long-running long-running
[   17.389888] systemd-nspawn[495]: ++ touch /reboot
[   17.390904] testsuite-13.sh[376]: + rm -f /var/lib/machines/long-running/trap
[   17.393937] testsuite-13.sh[376]: + machinectl kill --signal=SIGTRAP --kill-whom=leader long-running
[   17.408905] testsuite-13.sh[376]: + timeout 10 bash -c 'while ! test -e /var/lib/machines/long-running/trap; do sleep .5; done'
[   27.413210] testsuite-13.sh[376]: + at_exit
...
[   27.993376] testsuite-13.sh[373]: + echo 'Subtest /usr/lib/systemd/tests/testdata/units/testsuite-13.machinectl.sh failed'
2023-07-10 15:26:32 +01:00
Daan De Meyer db1264a811 mkosi: Add tpm2-tools to the initrd
To provide tpm2_eventlog for PCR debugging.
2023-07-10 15:50:55 +02:00
Daan De Meyer 5fc97a5fde Merge pull request #28334 from DaanDeMeyer/network-generator
Network generator fixes
2023-07-10 15:49:42 +02:00
Daan De Meyer ed4a1e0b27 analyze-pcrs: Fix typo 2023-07-10 14:26:54 +02:00
Daan De Meyer 3393104984 tpm2-util: Check for dlopen() when calculating tpm2 support 2023-07-10 14:26:51 +02:00
Luca Boccassi 03b70f060f sleep: fix unused variable warning
log_level_ignored is used only inside the ifdef, so declare it there too
2023-07-10 11:39:35 +01:00
Luca Boccassi 840ac5cd1a process-util: use clone2 on ia64
glibc does not provide clone() on ia64, only clone2. But only as a
symbol in the shared library, there's no prototype in the gblic
headers, so we have to define it, copied from the manpage.
2023-07-10 11:39:35 +01:00