Zbigniew Jędrzejewski-Szmek [Tue, 10 Aug 2021 15:34:07 +0000 (17:34 +0200)]
activate: use global variable instead of passing char **envp around
The effect should be the same, but the code is less verbose.
In particular, the variable was called envp in parts of the code,
but in other parts, we had a local envp variable, and envp was called
env.
Zbigniew Jędrzejewski-Szmek [Tue, 10 Aug 2021 15:28:47 +0000 (17:28 +0200)]
machinectl: allow --setenv=FOO
Zbigniew Jędrzejewski-Szmek [Tue, 10 Aug 2021 15:25:47 +0000 (17:25 +0200)]
run: allow --setenv=FOO
Zbigniew Jędrzejewski-Szmek [Tue, 10 Aug 2021 15:19:31 +0000 (17:19 +0200)]
homectl: allow --setenv=FOO
Zbigniew Jędrzejewski-Szmek [Tue, 10 Aug 2021 15:11:56 +0000 (17:11 +0200)]
nspawn: allow --setenv=FOO as equivalent to --setenv=FOO=$FOO
systemd-socket-activate has supported such a mode since
5e65c93a433447b15180249166f7b3944c3e6156. '--setenv=FOO=$FOO' is a fairly
common use in scripts, and it's nicer to do this automatically without worrying
about quoting and whatnot.
https://github.com/systemd/mkosi/pull/765 added the same to 'mkosi --environment='.
Zbigniew Jędrzejewski-Szmek [Tue, 10 Aug 2021 15:03:12 +0000 (17:03 +0200)]
basic/env-util: add a mode where we pull in the variable value from environment
Zbigniew Jędrzejewski-Szmek [Tue, 10 Aug 2021 14:53:00 +0000 (16:53 +0200)]
test-env-util: extend the test for strv_env_merge() a bit
Zbigniew Jędrzejewski-Szmek [Sat, 7 Aug 2021 08:16:19 +0000 (10:16 +0200)]
Add implicit sentinel to strv_env_merge()
Just to make it a tiny bit nicer to use.
Zbigniew Jędrzejewski-Szmek [Tue, 3 Aug 2021 14:49:05 +0000 (16:49 +0200)]
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.
Zbigniew Jędrzejewski-Szmek [Tue, 3 Aug 2021 14:47:37 +0000 (16:47 +0200)]
udev/builtins: inline iterator variables and other small modernizations
Zbigniew Jędrzejewski-Szmek [Mon, 2 Aug 2021 13:44:56 +0000 (15:44 +0200)]
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.
Zbigniew Jędrzejewski-Szmek [Tue, 3 Aug 2021 14:09:52 +0000 (16:09 +0200)]
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.
Zbigniew Jędrzejewski-Szmek [Mon, 26 Jul 2021 12:57:09 +0000 (14:57 +0200)]
cryptsetup-tokens: inline one interator variable declaration
Zbigniew Jędrzejewski-Szmek [Tue, 3 Aug 2021 14:14:51 +0000 (16:14 +0200)]
basic/log: invert loop to avoid repeated evaluation of condition
Zbigniew Jędrzejewski-Szmek [Mon, 26 Jul 2021 12:56:34 +0000 (14:56 +0200)]
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.
Luca Boccassi [Thu, 5 Aug 2021 10:18:03 +0000 (11:18 +0100)]
Merge pull request #20375 from yuwata/network-bridge-vlan-issue-20373
network: fix bridge and openvswitch issues
Yu Watanabe [Wed, 4 Aug 2021 13:59:39 +0000 (22:59 +0900)]
sd-dhcp6-client: do not ignore errors in client_receive_advertise()
This also adds several debug log messages.
Luca Boccassi [Thu, 5 Aug 2021 09:25:14 +0000 (10:25 +0100)]
Merge pull request #20381 from yuwata/cgroup-empty-to-root
core: use empty_to_root() for cgroup path in log messages
Yu Watanabe [Wed, 4 Aug 2021 18:14:41 +0000 (03:14 +0900)]
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
---
Yu Watanabe [Wed, 4 Aug 2021 18:13:48 +0000 (03:13 +0900)]
core/cgroup: fix error handling of cg_remove_xattr()
Yu Watanabe [Wed, 4 Aug 2021 17:44:24 +0000 (02:44 +0900)]
Merge pull request #20377 from yuwata/network-bridge-fdb-20305
network: always append new bridge FDB entries
Zbigniew Jędrzejewski-Szmek [Wed, 4 Aug 2021 17:36:42 +0000 (19:36 +0200)]
Merge pull request #19944 from yuwata/network-radv-introduce-uplink-interface
network: introduce UplinkInterface= in [IPv6SendRA]
Yu Watanabe [Wed, 4 Aug 2021 15:10:52 +0000 (00:10 +0900)]
network: ignore errors on unsetting master ifindex
Fixes #20241.
Yu Watanabe [Wed, 4 Aug 2021 08:23:06 +0000 (17:23 +0900)]
test-network: add a test case for issue #20373
Yu Watanabe [Wed, 4 Aug 2021 04:53:21 +0000 (13:53 +0900)]
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.
Yu Watanabe [Wed, 4 Aug 2021 04:52:52 +0000 (13:52 +0900)]
network: add comments
Yu Watanabe [Tue, 15 Jun 2021 19:50:49 +0000 (04:50 +0900)]
test-network: add a testcase for UplinkInterface= in [IPv6SendRA]
Yu Watanabe [Tue, 15 Jun 2021 18:51:57 +0000 (03:51 +0900)]
network: introduce UplinkInterface= in [IPv6SendRA]
Yu Watanabe [Tue, 15 Jun 2021 18:37:57 +0000 (03:37 +0900)]
network: use request queue to configure IPv6 RA engine
Yu Watanabe [Tue, 13 Jul 2021 12:27:51 +0000 (21:27 +0900)]
network: update comment and man page
Luca Boccassi [Wed, 4 Aug 2021 10:35:13 +0000 (11:35 +0100)]
Merge pull request #18567 from Werkov/mkosi-opensuse-v9+
CI for openSUSE Tumbleweed
Yu Watanabe [Wed, 4 Aug 2021 09:33:23 +0000 (18:33 +0900)]
test-network: add a testcase for vxlan with IPv6 local address
Michal Koutný [Fri, 12 Feb 2021 17:17:01 +0000 (18:17 +0100)]
ci: Add openSUSE Tumbleweed among tested distros
Michal Koutný [Mon, 21 Jun 2021 15:18:54 +0000 (17:18 +0200)]
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 ~]#
Michal Koutný [Fri, 12 Feb 2021 17:13:59 +0000 (18:13 +0100)]
ci: Do not require network in test images
The current boot test relies on terminal login, therefore network setup
inside image is unnecessary. This opens up possibility to test images
that don't support the network setup via veth devices.
Michal Koutný [Fri, 12 Feb 2021 17:19:06 +0000 (18:19 +0100)]
ci: Bump mkosi version to v10
Use mkosi GH action that includes fixes for openSUSE builds. This
enables testing openSUSE builds in CI.
Yu Watanabe [Wed, 4 Aug 2021 09:16:44 +0000 (18:16 +0900)]
sd-netlink: always append new bridge FDB entries
This partially reverts
192a9d95ea3e058afd824d38a9cea16ad0a84a57 (#19432).
Fixes #20305.
Yu Watanabe [Wed, 4 Aug 2021 04:14:03 +0000 (13:14 +0900)]
network: use address_equal()/route_equal() to compare addresses or routes configured by NDisc
Fixes #20244.
Luca Boccassi [Tue, 3 Aug 2021 23:05:28 +0000 (00:05 +0100)]
Merge pull request #20372 from keszybz/veritysetup-help
Document veritysetup syntax
Luca Boccassi [Tue, 3 Aug 2021 20:15:25 +0000 (21:15 +0100)]
Merge pull request #20368 from keszybz/drop-assert-not-reached-text
Drop the text argument from assert_not_reached()
Luca Boccassi [Tue, 3 Aug 2021 20:14:31 +0000 (21:14 +0100)]
Merge pull request #20371 from bluca/coverity
Two small coverity fixes
Zbigniew Jędrzejewski-Szmek [Sat, 31 Jul 2021 07:16:52 +0000 (09:16 +0200)]
man: describe veritysetup command syntax
It makes it easier to diagnose what the generated units actually do.
Zbigniew Jędrzejewski-Szmek [Sat, 31 Jul 2021 07:00:11 +0000 (09:00 +0200)]
veritysetup: print help for --help/-h/help
In general our commands print help on --help, but here this would trigger
the error that two arguments are needed. Let's make this more user-friendly.
Luca Boccassi [Tue, 3 Aug 2021 14:00:40 +0000 (15:00 +0100)]
tree-wide: voidify unchecked close_nointr calls
These have ignored the return value forever. Two are public APIs so
we can't really change what they return anyway, and the other one is
a cleanup path and the existing error code is more important.
CID#
1461274
CID#
1461275
CID#
1461276
Luca Boccassi [Tue, 3 Aug 2021 13:53:31 +0000 (14:53 +0100)]
creds: assert that credential read from file fits in data struct
Coverity CID#
1458114
Zbigniew Jędrzejewski-Szmek [Tue, 3 Aug 2021 13:46:05 +0000 (15:46 +0200)]
basic/log: use appropriate glyph in log_assert_failed_unreachable()
Per popular demand.
Zbigniew Jędrzejewski-Szmek [Tue, 27 Jul 2021 10:27:28 +0000 (12:27 +0200)]
Drop the text argument from assert_not_reached()
In general we almost never hit those asserts in production code, so users see
them very rarely, if ever. But either way, we just need something that users
can pass to the developers.
We have quite a few of those asserts, and some have fairly nice messages, but
many are like "WTF?" or "???" or "unexpected something". The error that is
printed includes the file location, and function name. In almost all functions
there's at most one assert, so the function name alone is enough to identify
the failure for a developer. So we don't get much extra from the message, and
we might just as well drop them.
Dropping them makes our code a tiny bit smaller, and most importantly, improves
development experience by making it easy to insert such an assert in the code
without thinking how to phrase the argument.
Yu Watanabe [Tue, 3 Aug 2021 02:03:29 +0000 (11:03 +0900)]
Merge pull request #20346 from poettering/strlen-unsigned-fix
CONST_MAX() integer size fix
Egor Ignatov [Wed, 28 Jul 2021 09:13:31 +0000 (12:13 +0300)]
time-set: adjust system clock if rtc is far in future
Luca Boccassi [Mon, 2 Aug 2021 19:31:42 +0000 (20:31 +0100)]
Merge pull request #20352 from poettering/copy-tweaks
various tweaks to copy.c
David Seifert [Mon, 2 Aug 2021 14:09:10 +0000 (16:09 +0200)]
Use correct `<poll.h>` include
* `<sys/poll.h>` is not specified in POSIX
Lennart Poettering [Fri, 26 Feb 2021 14:00:29 +0000 (15:00 +0100)]
btrfs-util: expose COPY_SIGTERM for btrfs_snapshot() too
Lennart Poettering [Fri, 26 Feb 2021 14:10:24 +0000 (15:10 +0100)]
copy: add COPY_SIGTERM, matching the existing COPY_SIGINT
Lennart Poettering [Fri, 26 Feb 2021 09:27:00 +0000 (10:27 +0100)]
copy: add COPY_SYNCFS flag
When copying large directory trees it should be a better idea to sync
the whole fs once when we are done instead of individually for each
file, hence add COPY_SYNCFS.
As opposed to COPY_FSYNC/COPY_FSYNC_FULL this only really applies to the
top-level directory, after completion of the whole copy.
Lennart Poettering [Mon, 1 Feb 2021 16:48:32 +0000 (17:48 +0100)]
copy: optionally fsync() files after copying them
As a safety precaution it makes sense to fsync() files after copying
them, and maybe even the directories they are contained in. Let's add a
flag for these two cases.
Lennart Poettering [Mon, 1 Feb 2021 16:45:25 +0000 (17:45 +0100)]
copy: tighten destination checks when copying files
let's make sure we only operate on regular files when copying files.
Also, make sure to copy file attributes only over if target is a regular
file (so that copying a file to /dev/null won't alter the access
mode/ownership of that device node...)
Lennart Poettering [Mon, 1 Feb 2021 16:37:11 +0000 (17:37 +0100)]
copy: move to single clean-up path
(This might not look like a big improvement, but will shortly, when we
add fsync() support to the copy logic, at which point there are more
error paths we can unify that way.)
While we are at it, tweak a clean-up path: only unlink a copied file if
we are definitely the ones who created them, i.e. if O_EXCL is set.
David Tardon [Mon, 2 Aug 2021 11:31:04 +0000 (13:31 +0200)]
machined-varlink: fix double free
Fixes: #18599
David Seifert [Mon, 2 Aug 2021 10:41:38 +0000 (12:41 +0200)]
Use correct `<fcntl.h>` include
* `<sys/fcntl.h>` is not specified in POSIX
Lennart Poettering [Fri, 30 Jul 2021 20:19:23 +0000 (22:19 +0200)]
cryptsetup: unbreak CI build
PR #20176 broke building of the cryptsetup token logic. This wasn't
noticed before the PR was merged, because the only CIs new enough to be
able to build the token logic (the Fedora Rawhide ones) didn't actually
run at all on the PR.
Let's add the missing hookup for the TPM2 PCR bank logic also to the
token module, to make the CI pass again.
Sergei Trofimovich [Sat, 31 Jul 2021 12:07:54 +0000 (13:07 +0100)]
coredump/stacktrace.c: avoid crash on binaries without NHDR
Observed as a crash on binaries built with gcc-master:
```
3 0x00005573b8841d6a in parse_package_metadata (name=name@entry=0x5573b901a620 "/a", id_json=0x0,
elf=0x5573b9028730, c=c@entry=0x7fffc688f790) at ../systemd-stable-249.2/src/coredump/stacktrace.c:157
4 0x00005573b884209e in module_callback (mod=0x7fffc688f6c0, userdata=<optimized out>,
name=0x5573b901a620 "/a", start=<optimized out>, arg=0x7fffc688f790)
at ../systemd-stable-249.2/src/coredump/stacktrace.c:306
5 0x00007f56d60dcbd5 in dwfl_getmodules (dwfl=0x5573b901fda0,
callback=callback@entry=0x5573b8841eb0 <module_callback>, arg=arg@entry=0x7fffc688f790, offset=offset@entry=0)
at ../../elfutils-0.185/libdwfl/dwfl_getmodules.c:86
6 0x00005573b884231b in parse_core (ret_package_metadata=0x7fffc688f848, ret=0x7fffc688f850,
executable=0x7fffc688f790 "\200\332\001\271sU", fd=21) at ../systemd-stable-249.2/src/coredump/stacktrace.c:366
7 coredump_parse_core (fd=fd@entry=6, executable=0x7fffc688f790 "\200\332\001\271sU", ret=ret@entry=0x7fffc688f850,
ret_package_metadata=ret_package_metadata@entry=0x7fffc688f848)
at ../systemd-stable-249.2/src/coredump/stacktrace.c:406
8 0x00005573b883f897 in submit_coredump (context=context@entry=0x7fffc688fa10, iovw=iovw@entry=0x7fffc688f990,
input_fd=input_fd@entry=5) at ../systemd-stable-249.2/src/coredump/coredump.c:827
9 0x00005573b883d339 in process_socket (fd=3) at ../systemd-stable-249.2/src/coredump/coredump.c:1041
10 run (argv=<optimized out>, argc=-
964101648) at ../systemd-stable-249.2/src/coredump/coredump.c:1416
11 main (argc=-
964101648, argv=<optimized out>) at ../systemd-stable-249.2/src/coredump/coredump.c:1422
```
Happens only on enabled elfutils symbolizer.
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
Lennart Poettering [Fri, 30 Jul 2021 19:54:21 +0000 (21:54 +0200)]
signal-util: fix typo
Noticed by @behrmann: https://github.com/systemd/systemd/pull/20156#discussion_r667451006
Lennart Poettering [Fri, 30 Jul 2021 19:36:40 +0000 (21:36 +0200)]
Merge pull request #20121 from poettering/bootctl-auto
units: run "bootctl update" automatically after boot, to ensure boot loader is regularly updated
Lennart Poettering [Fri, 30 Jul 2021 17:05:06 +0000 (19:05 +0200)]
Merge pull request #20172 from poettering/import-util-tweaks
Import-util: URL processing tweaks
Lennart Poettering [Fri, 30 Jul 2021 17:03:59 +0000 (19:03 +0200)]
Merge pull request #20170 from poettering/moar-glyphs
util: define more emoji glyphs
Lennart Poettering [Thu, 8 Jul 2021 11:52:21 +0000 (13:52 +0200)]
tpm2-util: auto-detect supported PCR banks
Previously, we'd encode PCR policies strictly with the SHA256 PCR bank
set. However, as it appears not all hw implement those. Sad.
Let's add some minimal logic to auto-detect supported PCR banks: if
SHA256 is supported, use that. But if not, automatically fall back to
SHA1.
This then changes both the LUKS code, and the credentials code to
serialize the selected bank, along with the rest of the data in order to
make this robust.
This extends the LUK2 JSON metadata in a compatible way. The credentials
encryption format is modified in an incompatible way however, but given
that this is not part of any official release should be OK.
Fixes: #20134
Lennart Poettering [Mon, 5 Jul 2021 12:37:04 +0000 (14:37 +0200)]
update TODO
Lennart Poettering [Fri, 2 Jul 2021 13:04:10 +0000 (15:04 +0200)]
boot: optionally update sd-boot on boot
Boot loaders are software like any other, and hence muse be updated in
regular intervals. Let's add a simple (optional) service that updates
sd-boot automatically from the host if it is found installed but
out-of-date in the ESP.
Note that traditional distros probably should invoke "bootctl update"
directly from the package scripts whenver they update the sd-boot
package. This new service is primarily intended for image-based update
systems, i.e. where the rootfs or /usr are atomically updated in A/B
style and where the current boot loader should be synced into the ESP
from the currently booted image every now and then. It can also act as
safety net if the packaging scripts in classic systems are't doing the
bootctl update stuff themselves.
Since updating boot loaders mit be a tiny bit risky (even though we try
really hard to make them robust, by fsck'ing the ESP and mounting it only on
demand, by doing updates mostly as single file updates and by fsync()ing
heavily) this is an optional feature, i.e. subject to "systemctl
enable". However, since it's the right thing to do I think, it's enabled
by default via the preset logic.
Note that the updating logic is implemented gracefully: i.e. it's a NOP
if the boot loader is already new enough, or was never installed.
Lennart Poettering [Fri, 2 Jul 2021 13:16:52 +0000 (15:16 +0200)]
bootctl: tweak "bootctl update" to be a NOP when boot loader is already current and --graceful is given
Previously, the "bootctl update" logic would refrain from downrgading a
boot loader, but if the boot loader that is installed already matched
the version we could install we'd install it anyway, under the
assumption this was effectively without effect. This behaviour was handy
while developing boot loaders, since installing a modified boot loader
didn't require a version bump.
However, outside of the systems of boot loader developers I don't think
this behaviour makes much sense: we should always emphasize doing
minimal changes to the ESP, hence when an update is supposedly not
necessary, then don't do it. Only update if it really makes sense, to
minimize writes to the ESP. Updating the boot loader is a good thing
after all, but doing so redundantly is not.
Also, downgrade the message about this to LOG_NOTICE, given this
shouldn't be a reason to log.
Finally, exit cleanly in this cases (or if another boot loader is
detected)
Lennart Poettering [Mon, 14 Jun 2021 20:41:58 +0000 (22:41 +0200)]
test: add simple test for import-util
Lennart Poettering [Tue, 2 Feb 2021 21:37:36 +0000 (22:37 +0100)]
import-util: tweak url patching helper
let's share some code between import_url_last_component() and
import_url_change_last_component(), and make sure we never eat up the
hostname component of the URL when parsing out the last component.
Let's also make import_url_change_last_component() more generic so that
we can also use it for append components to paths, instead of replacing
suffixes.
Lennart Poettering [Wed, 30 Dec 2020 20:49:10 +0000 (21:49 +0100)]
util: add one more helper for generating colored check mark glyphs
This one is useful for a outputs with a slightly more "positive"
outlook, i.e. where only the checkmarks are shown but the crossmarks are
replaced by spaces.
(Usecase: a larger table with many checkmarks, where the red crossmarks
might just be too much negative noise)
Lennart Poettering [Fri, 25 Jun 2021 09:50:54 +0000 (11:50 +0200)]
glyph-util: add three more emojis to emoji list
Lennart Poettering [Tue, 26 Jan 2021 15:30:06 +0000 (16:30 +0100)]
rm-rf: refactor rm_rf_children(), split out body of directory iteration loop
This splits out rm_rf_children_inner() as body of the loop. We can use
that to implement rm_rf_child() for deleting one specific entry in a
directory.
Lennart Poettering [Thu, 29 Jul 2021 16:47:04 +0000 (18:47 +0200)]
macro: change DECIMAL_STR_WIDTH() return type to size_t, like strlen() and so on
Lennart Poettering [Thu, 29 Jul 2021 15:45:19 +0000 (17:45 +0200)]
macro: sizeof() returns size_t, and that's good
Now that CONST_MAX() is a bit more foregiving, let's stick to the native
return type of sizeof() everywhere, which is size_t, instead of casting
to "unsigned", so that on the common archs we don't unnecessarily lose
the upper 32bits.
This semi-reverts
d3e40294572512810c9329933a488619e7ce22fd.
Lennart Poettering [Thu, 29 Jul 2021 16:39:09 +0000 (18:39 +0200)]
macro: relax CONST_MAX() type check a tiny bit
This checked for strict type compatibility so far, which mean CONST_MAX()
couldn't be used on two differently signed integers, even though
conceptually there's nothing wrong with allowing that here, as C
correctly picks the larger type in the ternary op.
hence, let's explicitly whitelist integer comparisons here, as long as
the signedness matches.
Luca Boccassi [Fri, 30 Jul 2021 10:38:13 +0000 (11:38 +0100)]
Merge pull request #20348 from poettering/free-and-replace-double-eval
make free_and_replace() double eval free
Frantisek Sumsal [Thu, 29 Jul 2021 16:44:51 +0000 (18:44 +0200)]
test: correctly detect ASan on s390x
s390x uses BRAS(L) instead of CALL(Q), e.g.:
```
1009528: c0 e5 ff ff f8 a0 brasl %r14,
1008668 <__asan_report_load1@plt>
10095f0: c0 e5 ff ff ea ec brasl %r14,
1006bc8 <__asan_stack_malloc_4@plt>
10097f8: c0 e5 ff ff f8 f8 brasl %r14,
10089e8 <__asan_report_load8@plt>
```
x86_64 for reference:
```
4011f3: e8 48 fe ff ff callq 401040 <__asan_report_load1@plt>
401227: e8 24 fe ff ff callq 401050 <__asan_report_load8@plt>
401251: e8 da fd ff ff callq 401030 <__asan_init@plt>
```
Lennart Poettering [Thu, 29 Jul 2021 15:22:03 +0000 (17:22 +0200)]
main: fix type confusion in do_reexecute()
Let's use size_t for stuff we count in memory. This doesn't matter much,
but is certainly more correct and less eyebrow-raising.
Follow-up for:
846f1da465beda990c1c01346311393f485df467
See: https://github.com/systemd/systemd/pull/20273#discussion_r679250180
Lennart Poettering [Thu, 29 Jul 2021 19:13:03 +0000 (21:13 +0200)]
xdg-autostart-service: rely on the new double-eval-free free_and_replace()
These semi-reverts
2744c7bb0176dc6b86a69acd4c449ea9e269e097
Lennart Poettering [Thu, 29 Jul 2021 19:05:38 +0000 (21:05 +0200)]
alloc-util: drop double eval from free_and_replace()
Inspired by:
2744c7bb0176dc6b86a69acd4c449ea9e269e097
Frantisek Sumsal [Thu, 29 Jul 2021 10:46:06 +0000 (12:46 +0200)]
meson: add the versiondep to the static lib deplist as well
Follow-up to
99c645b81aa47899ae3e0f920947a7d86cca5a86.
Zbigniew Jędrzejewski-Szmek [Wed, 28 Jul 2021 10:57:10 +0000 (12:57 +0200)]
systemctl: allow set-property to be called with a glob pattern
We call "systemctl set-property … Markers=+needs-restart" and this should
also work for globs, e.g. "user@*.service" or "syncthing@*.service".
https://bugzilla.redhat.com/show_bug.cgi?id=
1986258
Lennart Poettering [Thu, 29 Jul 2021 08:47:10 +0000 (10:47 +0200)]
Merge pull request #20337 from poettering/oom-adj-fix
make oom_score_adjust_is_valid() shared again
Lennart Poettering [Thu, 29 Jul 2021 08:46:50 +0000 (10:46 +0200)]
Merge pull request #20339 from poettering/bus-vtable-indent-fix
sd-bus: fix indentation in macros
Lennart Poettering [Wed, 28 Jul 2021 18:44:49 +0000 (20:44 +0200)]
sd-bus: add brief inline comment explaining the "reserved" field in the bus vtable structure
Follow-up for: #20253
Lennart Poettering [Wed, 28 Jul 2021 18:38:31 +0000 (20:38 +0200)]
sd-bus: fix indentation in macros
We use multiples of 8 spaces indentation in our C code, do it here too.
Franck Bui [Fri, 23 Jul 2021 09:12:03 +0000 (11:12 +0200)]
manager: reexecute on SIGRTMIN+25, user instances only
Before this patch, there was no way to request all running user instances for
reexecuting. However this can be useful especially during package updates
otherwise user instances are never updated and keep running a potentially very
old version of the binaries.
Now assuming that we have enough priviledge, it's possible to request
reexecution of all user instances:
systemctl kill --signal=SIGRTMIN+25 "user@*.service"
Note that this request is obviously asynchronous as it relies on a
signal. Keeping "systemctl kill" as the only interface should be good enough to
make this obvious and that's the reason why another interface, such as
"systemctl --global daemon-reexec" has not been considered.
PID1 already uses SIGTERM for reexecuting hence sending it SIGRTMIN+25 is a
nop.
Lennart Poettering [Wed, 28 Jul 2021 16:23:50 +0000 (18:23 +0200)]
parse-util: use oom_score_adjust_is_valid() at one more place
Lennart Poettering [Wed, 28 Jul 2021 16:22:00 +0000 (18:22 +0200)]
Revert "Make oom_score_adjust_is_valid() static"
This reverts commit
6bf3c6c9007ca87376d5dff1e029186a38736cdc.
Lennart Poettering [Wed, 28 Jul 2021 16:20:46 +0000 (18:20 +0200)]
update TODO
Yegor Alexeyev [Sun, 25 Jul 2021 12:08:41 +0000 (15:08 +0300)]
added missing handling of button release events
Yao Wei [Tue, 27 Jul 2021 06:05:28 +0000 (14:05 +0800)]
Use SKU to identify Dell clamshell models for accelerometer properties
As per request from Dell, we need to use sku property of modalias that
is patched into linux 5.13 for model identification:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=
e26f023e01ef26b4138bc1099af309bdc4523d23
Luca Boccassi [Wed, 28 Jul 2021 12:30:37 +0000 (13:30 +0100)]
Merge pull request #20326 from keszybz/meson-0.53.2
Use some more new meson features
Luca Boccassi [Wed, 28 Jul 2021 11:37:39 +0000 (12:37 +0100)]
Merge pull request #20311 from keszybz/manpage-l10n-report
Man pages cleanups
Frantisek Sumsal [Wed, 28 Jul 2021 08:26:29 +0000 (10:26 +0200)]
ci: bump meson version in LGTM
Otherwise LGTM fails to detect the build system:
```
[2021-07-27 23:18:47] [build-stdout] The Meson build system
[2021-07-27 23:18:47] [build-stdout] Version: 0.51.2
[2021-07-27 23:18:47] [build-stdout] Source dir: /opt/src
[2021-07-27 23:18:47] [build-stdout] Build dir: /opt/src/_lgtm_build_dir
[2021-07-27 23:18:47] [build-stdout] Build type: native build
[2021-07-27 23:18:47] [build-stdout] meson.build:3:0: ERROR: Meson version is 0.51.2 but project requires >= 0.53.2
[2021-07-27 23:18:47] [build-stdout] A full log can be found at /opt/src/_lgtm_build_dir/meson-logs/meson-log.txt
```
Zbigniew Jędrzejewski-Szmek [Tue, 27 Jul 2021 07:42:09 +0000 (09:42 +0200)]
man/systemctl: rework descriptions of bind and mount-image
The text used "unit's view" to mean mount namespace. But we talk about
mount namespaces in the later part of the paragraph anyway, so trying to
use an "approachable term" only makes the whole thing harder to understand.
Let's use the precise term.
Some paragraph-breaking and re-indentation is done too.
Zbigniew Jędrzejewski-Szmek [Wed, 28 Jul 2021 08:04:01 +0000 (10:04 +0200)]
meson: use meson's summary()
The output is similar to our hand-crafted status message, but it's nice to use
the built-in functionality. After all, it was amended during development to
support our use case.
Luca Boccassi [Tue, 27 Jul 2021 22:15:18 +0000 (23:15 +0100)]
Merge pull request #20319 from keszybz/meson-0.53.2
Bump required meson version to 0.53.2