Jan Janssen [Mon, 23 Jan 2023 13:54:28 +0000 (14:54 +0100)]
meson: Use python module for detection
Jan Janssen [Mon, 23 Jan 2023 13:41:26 +0000 (14:41 +0100)]
meson: Move bootctl sources defintion to its own file
The root meson.build file is already large enough.
Zbigniew Jędrzejewski-Szmek [Mon, 23 Jan 2023 12:49:20 +0000 (13:49 +0100)]
Merge pull request #25145 from yuwata/udevadm-trigger
udev: make 'udevadm trigger --settle' work even if device is renamed
Michael Biebl [Sun, 22 Jan 2023 21:49:06 +0000 (22:49 +0100)]
test: fix TEST-73-LOCALE on Debian
Fix incorrection assumption about the Debian patch being buggy and
actually making TEST-73-LOCALE fail on Debian.
```
# localectl set-locale LANG=C.UTF-8
# cat /etc/default/locale
LANG=C.UTF-8
```
Luca Boccassi [Mon, 23 Jan 2023 00:44:41 +0000 (00:44 +0000)]
Merge pull request #26147 from keszybz/silence-gcc-13-warning
Silence gcc-13 warning
Luca Boccassi [Sun, 22 Jan 2023 20:14:33 +0000 (20:14 +0000)]
Merge pull request #26146 from keszybz/two-man-page-tweaks
Two man page tweaks
Steve Ramage [Sat, 21 Jan 2023 19:46:11 +0000 (11:46 -0800)]
Resolves #26142 - Fix list of supported personalities
DaPigGuy [Sun, 22 Jan 2023 04:59:28 +0000 (20:59 -0800)]
hwdb: Prevent activation of airplane mode on HP ENVY x360
Zbigniew Jędrzejewski-Szmek [Sun, 22 Jan 2023 17:21:13 +0000 (18:21 +0100)]
shared/install: rework an assert to appease gcc-13
With the previous form, gcc is confused and thinks that .type might be unset.
Fixes #26118.
Zbigniew Jędrzejewski-Szmek [Sun, 22 Jan 2023 17:20:22 +0000 (18:20 +0100)]
shared/install: rework InstallChange to always have .path set
We would set .path in all cases except INSTALL_CHANGE_AUXILIARY_FAILED, where
we would just just .source. This special case is just not worth it, because
we can't easily assert that .path is set. Let's remove this special case to
help the compiler know that .path is actually set.
Avoids a warning with gcc-13.0.1-0.1.fc38.x86_64.
Zbigniew Jędrzejewski-Szmek [Sun, 22 Jan 2023 16:51:30 +0000 (17:51 +0100)]
man/sd_notify: fix indentation in sample programs
Whether we use a newline at the beginning of <programlisting> or not doesn't
seem to have any effect. So let's use the newline in multi-line examples; it is
easier to get the indentation right this way.
Zbigniew Jędrzejewski-Szmek [Tue, 17 Jan 2023 16:10:34 +0000 (17:10 +0100)]
man: minor corrections
Two issues that were missed in
8b9f092112ce097dd5c72a58a092c4176458889c.
David Tardon [Fri, 20 Jan 2023 14:17:50 +0000 (15:17 +0100)]
sd-path: export env. generators paths
Lennart Poettering [Sat, 21 Jan 2023 09:50:07 +0000 (10:50 +0100)]
Merge pull request #26139 from yuwata/test-load-fragment-fix-memleak
test-load-fragment: fix memleak
Yu Watanabe [Sat, 21 Jan 2023 06:25:30 +0000 (15:25 +0900)]
systemctl,test: -EBADF instead of -EBADFD
Follow-up for
da20baaeccbcca78350bf64bdc069dec685c95bc.
Lennart Poettering [Sat, 21 Jan 2023 09:46:54 +0000 (10:46 +0100)]
Merge pull request #26137 from poettering/timesyncd-touch-file-tweaks
timesync: some tweaks to saved timestamp file handling
Lennart Poettering [Thu, 19 Jan 2023 21:43:37 +0000 (22:43 +0100)]
logs-show: add a splash of colour to verbose output
Lennart Poettering [Thu, 19 Jan 2023 10:37:06 +0000 (11:37 +0100)]
logs-show: minor modernizations
Lennart Poettering [Thu, 19 Jan 2023 19:28:34 +0000 (20:28 +0100)]
sd-journal: validate monotonic timestamp before returning it
Lennart Poettering [Fri, 20 Jan 2023 14:36:09 +0000 (15:36 +0100)]
string-util: add common implementation of function that converts sized character buffers to NUL terminated C strings
Yu Watanabe [Sat, 21 Jan 2023 06:08:04 +0000 (15:08 +0900)]
test-load-fragment: shorten code a bit
Yu Watanabe [Sat, 21 Jan 2023 06:03:45 +0000 (15:03 +0900)]
test-load-fragment: fix memleak
Fixes a leak reported at https://github.com/systemd/systemd/pull/26115#issuecomment-
1398026085.
13r0ck [Fri, 20 Jan 2023 18:32:27 +0000 (11:32 -0700)]
hwdb: Add touchpad toggle mapping for System76 Pangolin 12
Lennart Poettering [Thu, 19 Jan 2023 19:34:36 +0000 (20:34 +0100)]
logs-show: move strlen() handling into update_json_data() so that we can use SD_ID128_TO_STRING()
Lennart Poettering [Thu, 19 Jan 2023 19:41:25 +0000 (20:41 +0100)]
timesyncd: make sure to update mtime of clock file on each boot
Let's make sure the timestamp file's mtime is guaranteed to change for
each boot, so that it is a useful indicator of time. Or in other words
this gurantees that systemd-timesyncd.service acts as a new kind of
milestone: that time definitely progressed on this boot even the machine
died abnormally imediately after.
Lennart Poettering [Thu, 19 Jan 2023 19:36:49 +0000 (20:36 +0100)]
timesyncd: modernize load_clock_timestamp() a bit
Let's log more.
Lennart Poettering [Thu, 19 Jan 2023 19:23:11 +0000 (20:23 +0100)]
timesyncd: write structured log messages whenever we bump the clock based on disk timestamp
It's useful being able to easily detect if a disk-based clock bump was
done, let's make it a structure message, the same way as acquiring an
NTP fix already is.
Also, set the clock to 1 µs further than the timestamp from the disk,
after all we know that that timestamp was current when it was written,
hence it can't be the right one right now anymore.
Lennart Poettering [Fri, 20 Jan 2023 21:21:17 +0000 (22:21 +0100)]
Merge pull request #26131 from poettering/bootctl-help-text-fix
bootctl --help fixes
Lennart Poettering [Mon, 16 Jan 2023 13:06:23 +0000 (14:06 +0100)]
journal: use compound initializors at one more place
Lennart Poettering [Thu, 19 Jan 2023 19:27:26 +0000 (20:27 +0100)]
journal: modernize match_make_string()
Lennart Poettering [Thu, 19 Jan 2023 10:35:36 +0000 (11:35 +0100)]
journalctl: don't convert between strv/Set for each log line
If output fields are specified, let's store this in a Set right-away,
instead of converting between strv and Set again and again for each
line.
This is not only faster, but also simpler and shorter.
Lennart Poettering [Thu, 19 Jan 2023 21:44:11 +0000 (22:44 +0100)]
logs-show: use json_variant_unref_many() where appropriate
Lennart Poettering [Fri, 20 Jan 2023 20:45:28 +0000 (21:45 +0100)]
Merge pull request #26126 from poettering/format-table-date
hostnamectl: show firmware date as date only, with now time
Lennart Poettering [Fri, 20 Jan 2023 17:40:57 +0000 (18:40 +0100)]
bootctl: remove space that should not be there
Lennart Poettering [Fri, 20 Jan 2023 17:36:31 +0000 (18:36 +0100)]
bootctl: split out boot loader spec + boot loader interface commands in --help text
grub (at least on fedora) nowadays implements the boot loader spec, but
not the boot loader interface. Hence let's split out the commands
specific to each in two groups in the --help text. This way the first
group just covers boot lodaer spec stuff (i.e. stuff on disk in the
ESP/XBOOTLDR partition). And the other covers talking to the boot loader
via EFI var.
Lennart Poettering [Fri, 20 Jan 2023 17:30:47 +0000 (18:30 +0100)]
bootctl: realign column in --help text
for some reason the descriptions of the switches and the commands
weren't aligned, one space off. Fix that.
Lennart Poettering [Fri, 20 Jan 2023 17:30:06 +0000 (18:30 +0100)]
bootctl: change section title for kernel image commands
Let's call them kernel *images*, not just *kernels*.
Lennart Poettering [Fri, 20 Jan 2023 17:29:13 +0000 (18:29 +0100)]
bootctl: drop full stop at end of --help texts
We never do that, don't do so here either.
Lennart Poettering [Fri, 20 Jan 2023 15:52:39 +0000 (16:52 +0100)]
hostnamectl: show firmware date with date only, without time
The source (usually DMI/SMBIOS) only has 24h granularity, hence don't
show time as well, it's useless.
Lennart Poettering [Fri, 20 Jan 2023 12:47:48 +0000 (13:47 +0100)]
format-table: add cell type for showing date only timestamps
Lennart Poettering [Fri, 20 Jan 2023 12:47:11 +0000 (13:47 +0100)]
time-util: add timestamp output style that shows dates only, no times
Lennart Poettering [Fri, 20 Jan 2023 15:54:22 +0000 (16:54 +0100)]
time-util: condition size check based on utc mode
Lennart Poettering [Fri, 20 Jan 2023 12:46:40 +0000 (13:46 +0100)]
time-util: simplify formatting of UNIX timestamps
Lennart Poettering [Fri, 20 Jan 2023 12:45:38 +0000 (13:45 +0100)]
time-util: move buffer size check after handling of UNIX timestamp style
Lennart Poettering [Fri, 20 Jan 2023 12:44:26 +0000 (13:44 +0100)]
time-util: if a date is unrepresentable, honour style to generate XXX string
Lennart Poettering [Fri, 20 Jan 2023 12:16:19 +0000 (13:16 +0100)]
time-util: use IN_SET() more
Jan Janssen [Fri, 20 Jan 2023 13:11:54 +0000 (14:11 +0100)]
boot: Properly strip EFI binaries
Removing debugging related sections is apparently not enough to truely
strip a (PE) binary.
Better late than never. It gets rid of this pesky warning from sbsign:
warning: data remaining[174080 vs 193173]: gaps between PE/COFF sections?
Lennart Poettering [Fri, 20 Jan 2023 16:28:13 +0000 (17:28 +0100)]
Merge pull request #26114 from bluca/sd_login_pidfd
sd-login: add sd_pidfd_* APIs
Lennart Poettering [Fri, 20 Jan 2023 12:14:42 +0000 (13:14 +0100)]
string-util: add new strdupcspn()/strdupspn()
These combine strndup() + strspn()/strcspn() into one.
There are a bunch of strndupa() calls that could use similar treatment
(or should be converted to strdup[c]spn(), but this commit doesn't
bother with that.
Luca Boccassi [Fri, 20 Jan 2023 15:01:03 +0000 (15:01 +0000)]
Merge pull request #23309 from DaanDeMeyer/log-context
basic: Add log context
Gerd Hoffmann [Fri, 20 Jan 2023 12:30:48 +0000 (13:30 +0100)]
bootctl: add kernel-inspect to --help text
Waltibaba [Fri, 20 Jan 2023 07:38:13 +0000 (08:38 +0100)]
hwdb: Add Chuwi Hi10X (N4120 version) iio matrix
There is a later model version of the Chuwi Hi10X that has significantly changed components compared to the existing hwdb one. Differentiator (on Chuwi forums, in thesofproject, etc.) is the N4120 rather than the N4100 processor.
The svn and pn seem to be identical, my Chuwi Hi10X matches with the old model except for the changed KIOX000A* iio sensor.
With the added ACCEL_MOUNT_MATRIX, my device works on gnome and has the correct (right-up) output in monitor-sensors.
Daan De Meyer [Thu, 19 Jan 2023 12:14:29 +0000 (13:14 +0100)]
ukify: Downgrade required python version to 3.9
Luca Boccassi [Thu, 19 Jan 2023 23:20:55 +0000 (23:20 +0000)]
sd-login: add sd_pidfd_* APIs
Same as the sd_pid_* counterparts, but take a pid file descriptor instead of
a pid, so that the callers can be sure that the returned values are really
about the process they asked for, and not about a recycled PID.
Luca Boccassi [Fri, 20 Jan 2023 12:13:22 +0000 (12:13 +0000)]
process-util: add helper to verify a pid via its pidfd
Luca Boccassi [Fri, 20 Jan 2023 11:00:53 +0000 (11:00 +0000)]
Merge pull request #26115 from yuwata/test-fix-memleak-fdleak
test: fix memleak and fd leak
Yu Watanabe [Fri, 20 Jan 2023 06:32:16 +0000 (15:32 +0900)]
tree-wide: fix typo
Yu Watanabe [Fri, 20 Jan 2023 05:54:44 +0000 (14:54 +0900)]
test-unit-name: fix fd leak
Fixes an issue reported at https://github.com/systemd/systemd/issues/22576#issuecomment-
1396774385.
Yu Watanabe [Fri, 20 Jan 2023 05:37:12 +0000 (14:37 +0900)]
test-ndisc: fix memleak and fd leak
Fixes issues reported at #22576.
Luca Boccassi [Thu, 19 Jan 2023 21:06:08 +0000 (21:06 +0000)]
Merge pull request #26105 from yuwata/network-config-parse-address-make-prefix-length-full
network: make config_parse_address() assume full prefix length
Michal Koutný [Wed, 18 Jan 2023 22:20:31 +0000 (23:20 +0100)]
core: mount namespaces: Remove auxiliary bind mounts directory after unit termination
Unit that requires its own mount namespace creates a temporary directory
to implement dynamic bind mounts (org.freedesktop.systemd1.Manager.BindMountUnit).
However, this directory is never removed and they will accumulate for
each unique unit (e.g. templated units of systemd-coredump@).
Attach the auxiliary runtime directory existence to lifetime of other
"runtime" only per-unit directories.
Lennart Poettering [Thu, 19 Jan 2023 20:57:39 +0000 (21:57 +0100)]
Merge pull request #25977 from YHNdnzj/PropagatesStopTo-fix-restart
core: propagate stop too if restart is issued
Jelle van der Waa [Fri, 13 Jan 2023 16:33:12 +0000 (17:33 +0100)]
hostnamed: expose FirmwareDate as timestamp in dbus
Offer the firmware date as an epoch instead of the literal DMI string.
Closes #25679
Luca Boccassi [Thu, 19 Jan 2023 20:21:52 +0000 (20:21 +0000)]
Merge pull request #26103 from lnussel/bootctl
bootctl: unlink and cleanup functions
Daan De Meyer [Thu, 19 Jan 2023 13:24:40 +0000 (14:24 +0100)]
mkosi: Rename the configuration files to use ".conf" as extension
edupont [Thu, 19 Jan 2023 13:24:56 +0000 (14:24 +0100)]
Fix typo in parameter name
Mike Yuan [Sun, 8 Jan 2023 15:16:22 +0000 (23:16 +0800)]
core: propagate stop too if restart is issued
The restart of a unit should also be considered as that
a stop job happens, and thus gets propagated to units
specified using PropagatesStopTo=.
Fixes #24068
Ludwig Nussel [Thu, 8 Dec 2022 15:27:31 +0000 (16:27 +0100)]
bootctl: unlink and cleanup functions
The unlink command removes an entry from the ESP including
referenced files that are not referenced in other entries. That is
useful eg to have multiple entries that use the same kernel with
different options.
The cleanup command removes all files that are not referenced by any
entry.
Sam James [Fri, 13 Jan 2023 05:17:56 +0000 (05:17 +0000)]
bpf: disable -fstack-protector in meson
In Gentoo, we recently started making Clang behave the same way as
our GCC, with -fstack-protector and some friends enabled by default.
SSP doesn't make sense for BPF, so disable it explicitly.
See also e.g. https://www.spinics.net/lists/netdev/msg556400.html.
Bug: https://bugs.gentoo.org/890004
Ludwig Nussel [Mon, 9 Jan 2023 16:58:57 +0000 (17:58 +0100)]
chase-symlinks: new chase_symlinks_and_unlink()
Yu Watanabe [Thu, 19 Jan 2023 12:27:24 +0000 (21:27 +0900)]
NEWS: mention that Address= assumes /32 or /128 prefix length if not specified
Yu Watanabe [Thu, 19 Jan 2023 12:20:24 +0000 (21:20 +0900)]
in-addr-util: drop unused mode to parse prefix length
Yu Watanabe [Thu, 19 Jan 2023 09:21:34 +0000 (18:21 +0900)]
network: assume prefix length is full address size
The commit
0f707207b9fc04d45ad176930cfefc77c0068545 enables strong
warning about missing prefix length in Address= setting.
The change was done in v241, and was about 4 years ago.
Let's drop the legacy assumption and make the parser consistent with
'ip address' command.
C.f. #11307.
Closes #26102.
Frantisek Sumsal [Thu, 19 Jan 2023 12:54:19 +0000 (13:54 +0100)]
test: update Ubuntu CI docs
Yu Watanabe [Tue, 17 Jan 2023 04:20:13 +0000 (13:20 +0900)]
network: do not enter failed state when received an invalid RA
Fixes the issue reported at https://github.com/systemd/systemd/issues/25891#issuecomment-
1368509262.
Yu Watanabe [Thu, 19 Jan 2023 12:21:52 +0000 (21:21 +0900)]
test-network: drop unused file
Ludwig Nussel [Wed, 18 Jan 2023 09:25:58 +0000 (10:25 +0100)]
meson: ukify depends on GNU_EFI
ukify is rather efi specific and the manpage is already conditional on
HAVE_GNU_EFI so make the program also depend on HAVE_GNU_EFI
Yu Watanabe [Wed, 26 Oct 2022 20:48:05 +0000 (05:48 +0900)]
test: use 'udevadm trigger --settle' even if device is renamed
Yu Watanabe [Fri, 28 Oct 2022 00:06:02 +0000 (09:06 +0900)]
udevadm-trigger: also check with the original syspath if device is renamed
For older kernels that synthetic UUID is not supported, we need to also
check the original device name, as udevd broadcasts uevent with new
sysname.
Fixes #25115.
Yu Watanabe [Fri, 28 Oct 2022 01:21:57 +0000 (10:21 +0900)]
udevadm-trigger: settle with synthetic UUID if the kernel support it
If the kernel support synthetic UUID in uevent, then let's assume that
the UUID is unique, and check only if the received UUID matches we
specified.
Partially fixes #25115.
Yu Watanabe [Fri, 28 Oct 2022 01:14:09 +0000 (10:14 +0900)]
udevadm-trigger: allow to fallback without synthetic UUID only first time
If a device is successfully triggered with synthetic UUID, then that means
the kernel support it. Hence, it is not necessary to fallback without UUID
for later devices.
Yu Watanabe [Fri, 28 Oct 2022 00:08:09 +0000 (09:08 +0900)]
sd-id128: introduce id128_hash_ops_free
Daan De Meyer [Wed, 18 Jan 2023 15:31:35 +0000 (16:31 +0100)]
testsuite-77: Fix race condition
Use a socket unit to make sure the socket exists before we start
the client that accesses it.
Luca Boccassi [Wed, 18 Jan 2023 22:24:39 +0000 (22:24 +0000)]
Merge pull request #23706 from medhefgo/efi-clang
boot: Add printf functions
William Roberts [Wed, 18 Jan 2023 14:45:53 +0000 (08:45 -0600)]
tpm2: add salt to pin
Add a salt to the pin and store it in the TPM2 LUKS header for future
this. This adds entropy to user supplied pins and helps brute forcing
the passphrase on the key residing in the TPM or brute forcing bind key
encrypted sessions with low entropy passphrases.
Signed-off-by: malikabhi05 <abhishek.malik@intel.com>
Signed-off-by: William Roberts <william.c.roberts@intel.com>
Luca Boccassi [Sun, 15 Jan 2023 18:54:16 +0000 (18:54 +0000)]
man: note that cgroup-based sandboxing is not bypassed by '+'
DeviceAllow= and others are applied to the whole cgroup via bpf, so
using '+' on an Exec line will not bypass them. Explain this in the
manpage.
Fixes https://github.com/systemd/systemd/issues/26035
Lennart Poettering [Wed, 18 Jan 2023 17:11:12 +0000 (18:11 +0100)]
Merge pull request #25790 from joshua-zivkovic/JZ/plotjson-main
systemd-analyze: Add JSON and table output to systemd-analyze's plot
Lennart Poettering [Wed, 18 Jan 2023 17:10:30 +0000 (18:10 +0100)]
Merge pull request #26082 from kraxel/uki
bootctl: add is-uki command
Jan Janssen [Tue, 23 Aug 2022 08:51:36 +0000 (10:51 +0200)]
boot: Drop use of Print
The custom print helpers have been replaced with explicit checks at the
call site to keep this in line with the way it is done in userspace. Any
calls where the check has been ommited should not need them as the value
is expected to alawys be around.
Jan Janssen [Sun, 5 Jun 2022 13:08:07 +0000 (15:08 +0200)]
boot: Drop use of xpool_print/SPrint
Jan Janssen [Thu, 18 Aug 2022 11:43:19 +0000 (13:43 +0200)]
tree-wide: Use __func__ in asserts
clang puts the whole function signature in __PRETTY_FUNCTION__, which is
a bit excessive for something that can already be figured out by using
the line number.
Jan Janssen [Thu, 18 Aug 2022 11:41:49 +0000 (13:41 +0200)]
boot: Add log_trace debugging helper
Jan Janssen [Sun, 5 Jun 2022 11:19:21 +0000 (13:19 +0200)]
boot: Introduce log_wait
Instead of stalling for every log message as it appears we now wait for
several messages at strategic locations.
Jan Janssen [Fri, 10 Jun 2022 17:06:57 +0000 (19:06 +0200)]
boot: Use printf for error logging
This also drops the _stall suffix in anticipation of the next commit.
Jan Janssen [Fri, 10 Jun 2022 16:55:24 +0000 (18:55 +0200)]
boot: Add printf functions
joshuazivkovic [Fri, 13 Jan 2023 09:17:27 +0000 (09:17 +0000)]
systemd-analyze: Add --json=, --table and -no-legend tests for plot
joshuazivkovic [Wed, 14 Dec 2022 12:31:59 +0000 (12:31 +0000)]
systemd-analyze: Add tab complete logic for plot
joshuazivkovic [Wed, 14 Dec 2022 12:31:22 +0000 (12:31 +0000)]
systemd-analyze: Update man/systemd-analyze.xml with Plot JSON and table
Joshua Zivkovic [Wed, 2 Nov 2022 08:55:50 +0000 (08:55 +0000)]
systemd-analyze: Add table and JSON output implementation to plot
Yu Watanabe [Wed, 18 Jan 2023 09:53:42 +0000 (18:53 +0900)]
test-network: reprocess the loopback network interface
Fixes the issue reported at https://github.com/systemd/systemd-centos-ci/pull/585#issuecomment-
1385537641.