1
0
mirror of https://github.com/systemd/systemd.git synced 2024-11-02 02:21:44 +03:00
Commit Graph

52667 Commits

Author SHA1 Message Date
svonohr
65e5bf7511 hwdb: Add Lenovo Thinkpad P14s Gen1/2 rule 2021-08-10 13:28:18 +09:00
Frantisek Sumsal
46db176f8c test: use a correct kernel binary on ppc64le machines
Ubuntu calls the kernel binary as `vmlinux-*`, but RHEL/CentOS uses
the "standard" `vmlinuz-` prefix.

Follow-up to eaa602cb14.
2021-08-09 22:12:18 +01:00
Dimitry Ishenko
33e82f3ef3 timesync: add option to periodically save time 2021-08-09 21:06:28 +02:00
Albert Brox
8a513eee30 pid1: add support for cgroup.kill 2021-08-09 12:14:26 +02:00
longpanda
2846007ecf Fix the "Failed to open random seed ..." message.
When boot ArchLinux from Ventoy, it always print `Failed to open random seed file: write protected.`
As Ventoy emulate the ISO file as a read-only CDROM, I didn't test with a real physical CDROM drive, but maybe it also has such problem.
As we use `EFI_FILE_MODE_WRITE`  to open the `loader\random-seed` file, so I think it's better to check the result with both  `EFI_WRITE_PROTECTED` and `EFI_NOT_FOUND`.
2021-08-09 10:56:01 +02:00
Yu Watanabe
5865dc1493 network: use monotonic instead of boot time to handle address creation/update timestamp
Follow-up for 25db3aeaf3 and 899034ba81.

Fixes another issue in #20244.
2021-08-09 10:33:49 +02:00
StefanBruens
bd73806888 Update 60-autosuspend-fingerprint-reader.hwdb to libfprint-1.92.1 2021-08-09 10:17:55 +02:00
GnunuX
c5f62204ee man systemd-sysusers: fix password to passwd 2021-08-09 10:17:05 +02:00
Zbigniew Jędrzejewski-Szmek
cb18d4e5d9
Merge pull request #20395 from takaswie/topic/correct-ieee1394-hwdb-entries
hwdb: ieee1394-unit-function: correct entries for some models
2021-08-09 10:12:11 +02:00
Zbigniew Jędrzejewski-Szmek
4f11590f9b
Merge pull request #20399 from mrc0mmand/test-tweaks
test: yet another fix for ASan detection
2021-08-09 10:06:23 +02:00
Frantisek Sumsal
6476676b84 test: skip a harmless ldd error when installing test libs
Skip a harmless error when running the tests on a system with a significantly
older systemd version (ldd tries to resolve the unprefixed RPATH for libsystemd.so.0,
which is in this case older than the already installed libsystemd.so.0 in $initdir).
The issue is triggered by installing test dependencies in install_missing_libraries().

Spotted on CentOS 8.

```
$ ldd /var/tmp/systemd-test.nZO11F/root/lib/systemd/tests/test-sd-device-thread
/var/tmp/systemd-test.nZO11F/root/lib/systemd/tests/test-sd-device-thread: /lib64/libsystemd.so.0: version `LIBSYSTEMD_240' not found (required by /var/tmp/systemd-test.nZO11F/root/lib/systemd/tests/test-sd-device-thread)
        linux-vdso64.so.1 (0x00007fffb79d0000)
        libclang_rt.asan-powerpc64le.so => /usr/lib64/clang/11.0.0/lib/linux/libclang_rt.asan-powerpc64le.so (0x00007fffb6ef0000)
        libsystemd.so.0 => /lib64/libsystemd.so.0 (0x00007fffb6d20000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fffb6cd0000)
        libc.so.6 => /lib64/libc.so.6 (0x00007fffb6ab0000)

$ LD_LIBRARY_PATH=/var/tmp/systemd-test.nZO11F/root/lib64/ ldd /var/tmp/systemd-test.nZO11F/root/lib/systemd/tests/test-sd-device-thread
        linux-vdso64.so.1 (0x00007fffaba80000)
        libclang_rt.asan-powerpc64le.so => /usr/lib64/clang/11.0.0/lib/linux/libclang_rt.asan-powerpc64le.so (0x00007fffaafa0000)
        libsystemd.so.0 => /var/tmp/systemd-test.nZO11F/root/lib64/libsystemd.so.0 (0x00007fffaa5f0000)
        libpthread.so.0 => /var/tmp/systemd-test.nZO11F/root/lib64/libpthread.so.0 (0x00007fffaa5a0000)
        libc.so.6 => /var/tmp/systemd-test.nZO11F/root/lib64/libc.so.6 (0x00007fffaa380000)

```
2021-08-09 10:04:40 +02:00
Frantisek Sumsal
25e399948b test: make busybox TEST-13-only dependency
to make running other tests a bit easier on distributions which don't have
busybox in repositories (CentOS).
2021-08-08 19:43:23 +02:00
Frantisek Sumsal
2d50e3c7bc test: yet another fix for ASan detection
This time for ppc64le:

```
100737c4:	5d 55 f9 4b 	bl      10008d20 <00000024.plt_call.__asan_report_load8>
100737f4:	4d 55 f9 4b 	bl      10008d40 <00000024.plt_call.__asan_handle_no_return>
10073884:	5d 50 f9 4b 	bl      100088e0 <00000024.plt_call.__asan_init>
1007388c:	75 54 f9 4b 	bl      10008d00 <00000024.plt_call.__asan_version_mismatch_check_v8>
100738a0:	41 36 f9 4b 	bl      10006ee0 <00000024.plt_call.__asan_register_globals>
100738f0:	71 4c f9 4b 	bl      10008560 <00000024.plt_call.__asan_unregister_globals>
```
2021-08-08 19:33:10 +02:00
Frantisek Sumsal
84817bfdb3 test: attempt to install only kernel modules for each subsystem
When `linux-headers` is installed on Arch Linux, it stores the module
source tree in the kernel module directory, which is then picked up by
`find` and we get a lot of harmless but annoying errors:

```
...
modprobe: FATAL: Module Kconfig.iosched not found in directory /lib/modules/5.13.7-arch1-1
modprobe: FATAL: Module Kconfig not found in directory /lib/modules/5.13.7-arch1-1
modprobe: FATAL: Module Kconfig not found in directory /lib/modules/5.13.7-arch1-1
modprobe: FATAL: Module dm-mpath.h not found in directory /lib/modules/5.13.7-arch1-1
modprobe: FATAL: Module dm-bio-prison-v2.h not found in directory /lib/modules/5.13.7-arch1-1
modprobe: FATAL: Module raid0.h not found in directory /lib/modules/5.13.7-arch1-1
...
```

Let's fix this by trying to install only kernel modules (*.ko files with
an optional compression).
2021-08-08 16:06:41 +01:00
Takashi Sakamoto
9f5c4c80d0 hwdb: ieee1394-unit-function: correct entries for eAR Master One and Terratec Aureon 7.1 FireWire
The configuration ROM of Acoustic Reality eAR Master One, Eroica, Figaro,
and Ciaccona has OUI for TerraTec Electronic GmbH in its vendor ID field.
As a result, modalias for the unit is the same as Terratec Electronic
Aureon 7.1 FireWire.

Linux FireWire subsystem adds the same modalias for units of the models.
ALSA bebob driver had duplicated entries for them and was changed at
Linux kernel v5.14 to remove the duplicated entries.

It's better to improve corresponding entries in systemd hwdb, while
it's impossible to distinguish the models by modalias and force to use
the same entry for them. As last resort, this commit selects more
popular model, Aureon 7.1 FireWire for ID_VENDOR_FROM_DATABASE and
ID_MODEL_FROM_DATABASE.

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a07ebc7e050ccdfec508449b2ef8f2b2aa90927b
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
2021-08-08 08:37:46 +09:00
Takashi Sakamoto
15c04125a2 hwdb: ieee1394-unit-function: correct comment for Mackie d.2 and d.2 Pro
I had misunderstanding that BridgeCo ASIC would be used for extension
option for Mackie d.2 and OXFW971 would be used for Mackie d.2 Pro like
Mackie d.4 Pro. However, it's clear that the latter is model with
pre-installed option.

This commit fixes commit to entry for Mackie d.2. I note that the modalias
of unit of Mackie d.4 Pro is still unidentified.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
2021-08-08 08:37:46 +09:00
Takashi Sakamoto
1ba328a1e6 hwdb: ieee1394-unit-function: correct comment for Mackie Onyx-i series
Some Mackie Onyx-i models are known to have two revisions at least, which
use different ASICS; Oxford Semiconductor FW971 and TC Applied
Technologies TCD2210. I misunderstand that Onyx 1640i had not such
revisions.

This commit fixes comment to entry for the model.

Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
2021-08-08 08:37:46 +09:00
Takashi Sakamoto
343ff58001 hwdb: ieee1394-unit-function: correct entries for Phonic products
Some of Phonic Firefly series and Helix Board series have the same
combination of vendor ID, model ID, specifier ID, and software
version in their configuration ROM. On the other hand, the other models
have unique combination.

ALSA bebob driver in Linux kernel v5.14 was changed in its modalias table
for the models.

This commit fixes systemd hwdb for the models.

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=1586d461f641b60040438275e14c7dbcec5907d6
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
2021-08-08 08:37:46 +09:00
Luca Boccassi
e908236e05
Merge pull request #20384 from keszybz/udev-code-modernization
Various minor refactorings (basic/log, udev, cryptsetup-tokens)
2021-08-07 12:06:00 +01:00
Zbigniew Jędrzejewski-Szmek
d340bdd1bd udev/builtins: make skip_subsystem() and skip_virtio() alike
The two functions do not implement identical logic, so they shouldn't
have identical structure, but let's make them both a bit simpler and
more alike.
2021-08-07 09:01:41 +02:00
Zbigniew Jędrzejewski-Szmek
d3d2e3abda udev/builtins: inline iterator variables and other small modernizations 2021-08-07 09:01:40 +02:00
Zbigniew Jędrzejewski-Szmek
8b06c72969 udev-builtin-input_ic: simplify loop in test_key()
We would update 'found' using bit operations, but studiously ignore the actual
value and treat it as boolean. So just use a boolean variable instead. Because
there is a double loop, we would break the inner loop, but repeat the outer
loop, even though the boolean was already set. Add '&& !found' in the loop
conditions to break iteration immediately.
2021-08-07 09:00:55 +02:00
Zbigniew Jędrzejewski-Szmek
169d980bc8 test-log: move logging call where we can still see it
We crank the level up in the loop, so we wouldn't see message
from log_info_errno().

Also move the loop iterator declaration inline.
2021-08-07 08:50:27 +02:00
Zbigniew Jędrzejewski-Szmek
700ea50482 cryptsetup-tokens: inline one interator variable declaration 2021-08-07 08:50:18 +02:00
Zbigniew Jędrzejewski-Szmek
2fec408e67 basic/log: invert loop to avoid repeated evaluation of condition 2021-08-07 08:50:16 +02:00
Zbigniew Jędrzejewski-Szmek
4dc2ecd227 basic/log: use structured initialization, drop unused initialization
We had 'msghdr' and 'mh' in various places. Now 'const struct msghdr msghdr' is
used consistently. With structured init the variable is only used in the call
to sendmsg(), so let's make it a bit more descriptive.
2021-08-07 08:49:11 +02:00
Max Resch
3c79a56d53 sd-boot: time measurements for the ARM64
This adds assembly to read the platform timer from the CP15 coprocessor
register `cntpct_el0` and the frequency from `cntfrq_el0`
2021-08-06 13:40:00 +01:00
Ondrej Kozina
38a0aec61e cryptsetup: validate optional tpm2 pcr bank field in token. 2021-08-06 13:33:50 +01:00
Zbigniew Jędrzejewski-Szmek
2525682565 units: make sure systemd-tmpfiles-{setup,clean} don't survive switch-root
Normally, these services are killed because we run isolate. But I booted into
emergency mode (because of a futher bug with us timing out improperly on the
luks password prompt), and then continuted to the host system by running
'systemctl start systemd-switch-root.service'. My error, but the results are
confusing and bad: systemd in the host sees 'systemd-tmpfiles-setup.service'
as started successfully, and doesn't restart it, so the setup for /tmp/.X11 is
not done and gdm.service fails. So while we wouldn't encounter this during
normal successful boot, I think it's good to make this more robust.

The dep is added to systemd-tmpfiles-{setup,clean}, because /tmp is not
propagated over switch-root. /dev is, so I didn't touch
systemd-tmpfiles-setup-dev.service.
2021-08-06 11:11:14 +01:00
Michal Koutný
13e721036b core: Make sure cgroup_oom_queue is flushed on manager exit
The unit queues are not serialized/deserialized (they are recreated
after reexec/reload instead). The destroyed units are not removed from
the cgroup_oom_queue. That means the queue may contain possibly invalid
pointers to released units.

Fix this by removing the units from cgroup_oom_queue as we do for
others. When at it, sync assert checks with currently existing queues
and put them in order in the manager cleanup code.
2021-08-05 10:35:20 -04:00
Dan Streetman
869f52f218 cgroup: do 'catchup' for unit cgroup inotify watch files
While reexec/reload, we drop the inotify watch on cgroup file(s), so
we need to re-check them in case they changed and we missed the event.

Fixes: #20198
2021-08-05 10:35:20 -04:00
Luca Boccassi
32a2ee2bb4
Merge pull request #20375 from yuwata/network-bridge-vlan-issue-20373
network: fix bridge and openvswitch issues
2021-08-05 11:18:03 +01:00
Yu Watanabe
d7799877a0 sd-dhcp6-client: do not ignore errors in client_receive_advertise()
This also adds several debug log messages.
2021-08-05 11:14:23 +01:00
Luca Boccassi
fa55e7b338
Merge pull request #20381 from yuwata/cgroup-empty-to-root
core: use empty_to_root() for cgroup path in log messages
2021-08-05 10:25:14 +01:00
Yu Watanabe
6178e2f889 core: wrap cgroup path with empty_to_root() in log messages
This fixes e.g. the following log message:
---
systemd[1]: -.slice: Failed to migrate controller cgroups from , ignoring: Read-only file system
---
2021-08-05 03:14:46 +09:00
Yu Watanabe
0cddb53c85 core/cgroup: fix error handling of cg_remove_xattr() 2021-08-05 03:13:48 +09:00
Yu Watanabe
801cf85935
Merge pull request #20377 from yuwata/network-bridge-fdb-20305
network: always append new bridge FDB entries
2021-08-05 02:44:24 +09:00
Zbigniew Jędrzejewski-Szmek
b176d4d377
Merge pull request #19944 from yuwata/network-radv-introduce-uplink-interface
network: introduce UplinkInterface= in [IPv6SendRA]
2021-08-04 19:36:42 +02:00
Yu Watanabe
c347a98272 network: ignore errors on unsetting master ifindex
Fixes #20241.
2021-08-05 00:10:55 +09:00
Yu Watanabe
988b0660aa test-network: add a test case for issue #20373 2021-08-04 23:22:20 +09:00
Yu Watanabe
1171f3f030 network: ignore errors on setting bridge config
For some setups, kernel refuses to set bridge configs with -EOPNOTSUPP.
See kernel's rtnl_bridge_setlink() in net/core/rtnetlink.c.

Fixes #20373.
2021-08-04 23:19:49 +09:00
Yu Watanabe
17d808a8bf network: add comments 2021-08-04 23:03:27 +09:00
Yu Watanabe
4a906586f8 test-network: add a testcase for UplinkInterface= in [IPv6SendRA] 2021-08-04 22:21:00 +09:00
Yu Watanabe
63295b42ae network: introduce UplinkInterface= in [IPv6SendRA] 2021-08-04 22:20:56 +09:00
Yu Watanabe
a254fab20d network: use request queue to configure IPv6 RA engine 2021-08-04 22:19:14 +09:00
Yu Watanabe
2b24292692 network: update comment and man page 2021-08-04 22:19:14 +09:00
Luca Boccassi
57777c9e61
Merge pull request #18567 from Werkov/mkosi-opensuse-v9+
CI for openSUSE Tumbleweed
2021-08-04 11:35:13 +01:00
Yu Watanabe
cca07d910a test-network: add a testcase for vxlan with IPv6 local address 2021-08-04 18:33:23 +09:00
Michal Koutný
3ec4fccb37 ci: Add openSUSE Tumbleweed among tested distros 2021-08-04 11:16:48 +02:00
Michal Koutný
7e5e604393 ci: Detect shell prompt with higher specificity
The current pattern '#' triggers on the openSUSE kernel version that is
printed early during boot when no actual prompt is ready
> [    0.000000] Linux version 5.12.10-1-default (geeko@buildhost) (gcc (SUSE Linux) 11.1.1 20210510 [revision 23855a176609fe8dda6abaf2b21846b4517966eb], GNU ld (GNU Binutils; openSUSE Tumbleweed) 2.36.1.20210326-4) #1 SMP Fri Jun 11 05:05:06 UTC 2021 (b92eaf7)

Instead wait for pattern that: a) should have fewer false positives, b)
still be with working on distro shells:

openSUSE (red color)
^[[1m^[[31mimage:~ #^[[m^O

arch
[root@image ~]#

debian
root@image:~#

ubuntu
root@image:~#

fedora
[root@image ~]#
2021-08-04 11:16:48 +02:00