Zbigniew Jędrzejewski-Szmek [Tue, 28 May 2019 12:36:54 +0000 (14:36 +0200)]
Merge pull request #12392 from poettering/firstboot-salt
generalize crypt_r() salt generation code
Lennart Poettering [Tue, 28 May 2019 12:34:53 +0000 (14:34 +0200)]
Merge pull request #12597 from keszybz/analyze-timestamp
Analyze timestamps
Lennart Poettering [Tue, 28 May 2019 12:28:59 +0000 (14:28 +0200)]
Merge pull request #12682 from keszybz/pull-in-user-targets
rules: enable hardware-related targets also for user instances
Zbigniew Jędrzejewski-Szmek [Tue, 28 May 2019 10:36:34 +0000 (12:36 +0200)]
NEWS: add some entries
For #12680, #12571.
Lennart Poettering [Wed, 24 Apr 2019 16:41:25 +0000 (18:41 +0200)]
capability-util: be more careful with types
Zbigniew Jędrzejewski-Szmek [Tue, 28 May 2019 12:20:34 +0000 (14:20 +0200)]
Merge pull request #12679 from yuwata/journal-issue-12400
journal: do not trigger assertion when journal_file_close() get NULL
Zbigniew Jędrzejewski-Szmek [Tue, 28 May 2019 12:10:44 +0000 (14:10 +0200)]
rules: enable hardware-related targets also for user instances
> the odd thing is that these units are also defined for the systemd user
> instance. However, because these are bound to SYSTEMD_USER_WANTS rather than
> SYSTEMD_WANTS they are effectively useless unless some other software
> installs the corresponding udev rules first.
This adds the rules and starts those targets also for user instances.
Fixes #12330.
Yu Watanabe [Tue, 28 May 2019 09:07:01 +0000 (18:07 +0900)]
journal: use cleanup attribute at one more place
Yu Watanabe [Tue, 28 May 2019 03:40:17 +0000 (12:40 +0900)]
journal: do not trigger assertion when journal_file_close() get NULL
We generally expect destructors to not complain if a NULL argument is passed.
Closes #12400.
Yu Watanabe [Wed, 22 May 2019 16:30:02 +0000 (01:30 +0900)]
udev: fix error message
Zbigniew Jędrzejewski-Szmek [Tue, 28 May 2019 08:27:58 +0000 (10:27 +0200)]
Merge pull request #12653 from yuwata/test-network-improvements-2
network: fix configuring vxcan devices and several test-network follow-ups
Douglas Christman [Sat, 25 May 2019 07:50:49 +0000 (15:50 +0800)]
zsh-completion: fix completion for systemd-inhibit --what
Yu Watanabe [Sat, 25 May 2019 22:21:00 +0000 (07:21 +0900)]
udev: suppress warning when interface matches 99-default.link
This suppress the following warning:
```
systemd-udevd[437]: Config file /usr/lib/systemd/network/99-default.link
applies to device based on potentially unpredictable interface name 'wlan0'
```
Follow-up for
84ea567eb4326eb970a33188649fde6bea2a0d4e.
Yu Watanabe [Sun, 26 May 2019 19:58:30 +0000 (04:58 +0900)]
bash-completion: update options for bootctl
Yu Watanabe [Tue, 28 May 2019 01:52:55 +0000 (10:52 +0900)]
coredumpctl: fix --debugger option
Closes #12660.
Frantisek Sumsal [Mon, 27 May 2019 17:59:26 +0000 (19:59 +0200)]
test: correctly fail when system is borked
In certain situations, the systemctl commands may fail (e.g. due to
missing shared libraries), but the 'script' continues and creates a
/testok file, marking the test incorrectly as passed. Let's fix this and
bail out immediately when a command exits with a non-zero exit code.
Evgeny Vereshchagin [Mon, 27 May 2019 16:59:53 +0000 (19:59 +0300)]
Merge pull request #12663 from mrc0mmand/clang-asan-improvements
test: improve handling of ASan under clang
Frantisek Sumsal [Mon, 27 May 2019 12:14:26 +0000 (14:14 +0200)]
docs: add documentation for sanitizers
Frantisek Sumsal [Fri, 24 May 2019 20:35:52 +0000 (22:35 +0200)]
test: improve handling of ASan under clang
Running integration tests with ASan is somewhat tricky to begin with, as
we need to pre-load the ASan runtime DSO for certain services (like
dbus), otherwise they won't start or behave as expected. In case of gcc
this is pretty easy, as we need the runtime DSO during compilation, so
it's already present on the host system. For clang things get more
complicated, as ASan is compiled in statically by default, thus to
enable the necessary dynamic-ish behavior one needs to compile with
-shared-libasan and then correctly set LD_PRELOAD_PATH, as the runtime
libraries are not in a standard library path.
Oliver Harley [Sun, 26 May 2019 05:31:29 +0000 (07:31 +0200)]
--bind-device does not take a bool
See https://github.com/systemd/systemd/blob/
e95be7def26c6c5feaf08a4135aa4f50c53263a8/src/mount/mount-tool.c#L164
Also makes the man page consistent with the `--help` option
Jack [Sat, 25 May 2019 20:42:00 +0000 (21:42 +0100)]
hwdb: Add support for Linx 12V64 (#12665)
This fixes the accelerometer for the Linx 12V64.
Note that even though the configuration for both models is the same, the 12V64 and 12X64 are different models.
pan93412 [Sat, 25 May 2019 13:40:43 +0000 (21:40 +0800)]
tran: update Chinese (Traditional) translation to the latest. (#12662)
l10n: update Chinese (Traditional) translation
Lennart Poettering [Tue, 25 Sep 2018 12:09:54 +0000 (14:09 +0200)]
meson: let's make unified cgroupsv2 the default
Prompted by @evverx' comments:
https://github.com/systemd/systemd/pull/10161#pullrequestreview-
158327715
Lennart Poettering [Fri, 24 May 2019 08:54:09 +0000 (10:54 +0200)]
machine-image: openat() doesn't operate on the cwd if the first argument is specified
A fix-up for
bcb846f30f9ca8f42e79d109706aee9f2032261b.
Zbigniew Jędrzejewski-Szmek [Fri, 24 May 2019 10:17:53 +0000 (12:17 +0200)]
Merge pull request #12430 from poettering/seccomp-kill-process
use SCMP_ACT_KILL_PROCESS for SystemCallFilters=
Lennart Poettering [Mon, 29 Apr 2019 11:02:32 +0000 (13:02 +0200)]
test-execute: turn off coredump generation in test services
These services are likely to coredump, and we expect that but aren't
interested in the coredump. Hence let's turn off processing by setting
RLIMIT_CORE to 0/0.
Lennart Poettering [Mon, 29 Apr 2019 10:58:55 +0000 (12:58 +0200)]
test-execute: let's ignore the difference between CLD_KILLED and CLD_DUMPED
Depending on system configuration and whether SCMP_ACT_KILL_PROCESS or
SCMP_ACT_KILL_THREAD is available/used processes might coredump on
specific coredumps or are just plain killed. For our test case the
difference doesn't really matter, hence let's hide it away.
Lennart Poettering [Mon, 29 Apr 2019 10:54:26 +0000 (12:54 +0200)]
test-execute: check exit code before exit status
The meaning of the status changes depending on the code, hence let's
always compare the code first, status second.
Lennart Poettering [Mon, 29 Apr 2019 10:05:33 +0000 (12:05 +0200)]
service: tweak capitalization of unit description
Lennart Poettering [Mon, 29 Apr 2019 10:05:16 +0000 (12:05 +0200)]
NEWS: document the new SystemCallFilter= behaviour
Lennart Poettering [Mon, 29 Apr 2019 10:04:55 +0000 (12:04 +0200)]
nspawn: expose the new seccomp actions in the OCI logic
Lennart Poettering [Mon, 29 Apr 2019 10:04:34 +0000 (12:04 +0200)]
test: use the new action in our tests
This way, we know that it works as intended.
Lennart Poettering [Mon, 29 Apr 2019 10:03:58 +0000 (12:03 +0200)]
core: prefer SCMP_ACT_KILL_PROCESS for SystemCallFilter= behaviour
If we have it, use it. It makes a ton more sense.
Fixes: #11967
Lennart Poettering [Mon, 29 Apr 2019 09:54:00 +0000 (11:54 +0200)]
seccomp: add scmp_act_kill_process() helper that returns SCMP_ACT_KILL_PROCESS if supported
Lennart Poettering [Fri, 24 May 2019 08:43:07 +0000 (10:43 +0200)]
Merge pull request #12601 from keszybz/two-log-color-adjustments
Two log color adjustments
Lennart Poettering [Fri, 24 May 2019 08:41:30 +0000 (10:41 +0200)]
Merge pull request #12590 from keszybz/unicode-cmdlines
Use unicode for cmdline printing
Yu Watanabe [Thu, 23 May 2019 15:51:22 +0000 (00:51 +0900)]
test-network: add basic tests for vxcan device
Yu Watanabe [Thu, 23 May 2019 15:51:00 +0000 (00:51 +0900)]
network: make VXCAN devices go through LINK_STATE_CONFIGURING
Yu Watanabe [Thu, 23 May 2019 15:09:55 +0000 (00:09 +0900)]
test-network: add more tests for LinkLocalAddressing=yes on various netdevs
Yu Watanabe [Thu, 23 May 2019 14:55:54 +0000 (23:55 +0900)]
test-network: drop pure test for dummy device
The dummy device is well used in test-network. So, the dropped test
is completely redundant.
Yu Watanabe [Thu, 23 May 2019 14:45:49 +0000 (23:45 +0900)]
test-network: drop redundant check_link_exists()
When wait_online() passes, then the link must exist.
Michael Biebl [Tue, 14 May 2019 15:40:45 +0000 (17:40 +0200)]
Drop support for /usr/sbin/halt.local
/usr/sbin/halt.local is a Fedora/Red Hat anachronism from pre-systemd
times.
Jóhann B. Guðmundsson [Thu, 23 May 2019 07:39:07 +0000 (07:39 +0000)]
mkosi: update to Fedora30 (#12642)
Zbigniew Jędrzejewski-Szmek [Thu, 23 May 2019 07:37:54 +0000 (09:37 +0200)]
Merge pull request #12645 from poettering/journal-mmap-einval
journald: output a proper error message when the journal is used on f…
Mike Gilbert [Wed, 22 May 2019 14:31:01 +0000 (10:31 -0400)]
shared/machine-image: avoid passing NULL to log_debug_errno
Fixes: https://github.com/systemd/systemd/issues/12534
Yu Watanabe [Thu, 23 May 2019 02:17:33 +0000 (11:17 +0900)]
Merge pull request #12618 from yuwata/test-network-improvements
network: several cleanups
root [Wed, 22 May 2019 23:10:23 +0000 (02:10 +0300)]
login: fixup button_open() fd
Chris Down [Wed, 22 May 2019 20:44:30 +0000 (16:44 -0400)]
Merge pull request #12647 from cdown/dup
test: Remove superfluous error check
Chris Down [Wed, 22 May 2019 19:26:20 +0000 (15:26 -0400)]
test: Remove superfluous error check
This is already checked above before we set any manager attributes,
immediately after manager_new().
Lennart Poettering [Wed, 22 May 2019 17:00:10 +0000 (19:00 +0200)]
Merge pull request #12631 from keszybz/doc-and-error-message-tweaks
Doc and error message tweaks
Lennart Poettering [Wed, 22 May 2019 16:48:02 +0000 (18:48 +0200)]
journald: output a proper error message when the journal is used on fs that doesn't do mmap() properly
Prompted by:
https://lists.freedesktop.org/archives/systemd-devel/2019-May/042708.html
Zbigniew Jędrzejewski-Szmek [Wed, 22 May 2019 15:23:28 +0000 (17:23 +0200)]
Merge pull request #12431 from poettering/tmpfiles-chmod-chown-order
tmpfiles: run chown() before chmod()
Zbigniew Jędrzejewski-Szmek [Wed, 22 May 2019 09:09:36 +0000 (11:09 +0200)]
man: reword systemd.socket(5) description to avoid "file" when talking about services
This text was written a long time ago, when we mostly talked about "service
files". Strictly speaking, we don't need a "file", because the service might
be just an instance of a template, or an alias to another service. So let's use
the more modern parlance of "service units".
https://bugzilla.redhat.com/show_bug.cgi?id=1623781#c21
Zbigniew Jędrzejewski-Szmek [Tue, 21 May 2019 18:02:34 +0000 (20:02 +0200)]
pid1: improve message when setting up namespace fails
I covered the most obvious paths: those where there's a clear problem
with a path specified by the user.
Prints something like this (at error level):
May 21 20:00:01.040418 systemd[125871]: bad-workdir.service: Failed to set up mount namespacing: /run/systemd/unit-root/etc/tomcat9/Catalina: No such file or directory
May 21 20:00:01.040456 systemd[125871]: bad-workdir.service: Failed at step NAMESPACE spawning /bin/true: No such file or directory
Fixes #10972.
Zbigniew Jędrzejewski-Szmek [Tue, 21 May 2019 17:38:19 +0000 (19:38 +0200)]
man: tweak description of #12247 a bit
It wasn't really wrong, but maybe we can make it a bit clearer.
Fixes #12247.
Zbigniew Jędrzejewski-Szmek [Tue, 21 May 2019 17:31:49 +0000 (19:31 +0200)]
man: add note that %h/%u/%U are mostly useless
Fixes #12389.
Zbigniew Jędrzejewski-Szmek [Tue, 21 May 2019 17:26:12 +0000 (19:26 +0200)]
core: unset HOME=/ that the kernel gives us
Partially fixes #12389.
%h would return "/" in a machine, but "/root" in a container. Let's fix
this by resetting $HOME to the expected value.
Zbigniew Jędrzejewski-Szmek [Tue, 21 May 2019 15:36:55 +0000 (17:36 +0200)]
sd-bus: improve error message for invalid org.freedesktop.DBus.Properties.Set signature
Fixes #12551.
Zbigniew Jędrzejewski-Szmek [Tue, 21 May 2019 15:08:35 +0000 (17:08 +0200)]
man: add note which tmpfiles services read which files
Fixes #12596.
Zbigniew Jędrzejewski-Szmek [Wed, 22 May 2019 08:45:13 +0000 (10:45 +0200)]
login: use _cleanup_ to simplify error handling
When logging about a device, try to include the path to it everywhere in
messages. Also fixes an invalid assert(fd).
Inspired by
b2774a3ae692113e1f47a336a6c09bac9cfb49ad.
Lennart Poettering [Tue, 21 May 2019 16:13:55 +0000 (18:13 +0200)]
loop-util: invoke LOOP_CTL_GET_FREE in a loop
if we don't call it in a loop the device it tells us to open might
already be gone, taken by somebody else racing against us. Hence try a
few times.
Yu Watanabe [Wed, 22 May 2019 09:02:20 +0000 (18:02 +0900)]
test-network: drop wait_online() from test_ip6gre_tunnel()
Yu Watanabe [Wed, 22 May 2019 05:49:46 +0000 (14:49 +0900)]
network: unify link_ipv4ll_enabled() and link_ipv4ll_fallback_enabled()
Yu Watanabe [Mon, 20 May 2019 13:40:54 +0000 (22:40 +0900)]
test-network: wait for bridge slave to be enslaved in test_bridge_ignore_carrier_loss_frequent_loss_and_gain()
Yu Watanabe [Wed, 22 May 2019 02:11:07 +0000 (11:11 +0900)]
network: drop unused variable
Yu Watanabe [Wed, 22 May 2019 01:46:11 +0000 (10:46 +0900)]
network: update master's ifindex in link_update()
And use it in link_is_enslaved().
Yu Watanabe [Mon, 20 May 2019 22:36:42 +0000 (07:36 +0900)]
test-network: drop unused variable
Yu Watanabe [Mon, 20 May 2019 07:17:34 +0000 (16:17 +0900)]
network: drop duplicated logs
link_set_state() already logs about state change.
Yu Watanabe [Mon, 20 May 2019 07:00:54 +0000 (16:00 +0900)]
test-network: add test that vcan device can be configured state
Yu Watanabe [Mon, 20 May 2019 06:59:44 +0000 (15:59 +0900)]
network: make CAN devices go through LINK_STATE_CONFIGURING
Yu Watanabe [Mon, 20 May 2019 06:29:54 +0000 (15:29 +0900)]
test-network: add basic tests for veth interfaces
Yu Watanabe [Mon, 20 May 2019 05:13:11 +0000 (14:13 +0900)]
network: deprecate OneQueue= for tun or tap devices
IFF_ONE_QUEUE has no effect since kernel-3.8. See kernel's commit
5d097109257c03a71845729f8db6b5770c4bbedc.
Yu Watanabe [Mon, 20 May 2019 04:59:34 +0000 (13:59 +0900)]
test-network: add tests for flags of tun or tap devices
Yu Watanabe [Mon, 20 May 2019 04:38:01 +0000 (13:38 +0900)]
network: extend warning messages
Yu Watanabe [Mon, 20 May 2019 04:27:20 +0000 (13:27 +0900)]
network: Allow IFF_VNET_HDR to also be set for tun devices
f5f07dbf06f6df9d12e092c05ad8cfbe244d203f adds VnetHeader= for tap
devices, but the flag is also used for tun devices.
This adds VnetHeader= setting in [Tun] section.
Yu Watanabe [Mon, 20 May 2019 04:16:55 +0000 (13:16 +0900)]
test-network: add tests for LinkLocalAddressing= on ipvlan or friends
Yu Watanabe [Mon, 20 May 2019 04:15:02 +0000 (13:15 +0900)]
network: disable IPv4LL for ipvlan with L3 or L3S mode
As L3 or L3S mode do not support ARP.
Yu Watanabe [Mon, 20 May 2019 03:48:05 +0000 (12:48 +0900)]
test-network: add tests for Flags= in [IPVTAP]
Yu Watanabe [Mon, 20 May 2019 03:47:31 +0000 (12:47 +0900)]
test-network: add tests for Flags= in [IPVLAN]
Yu Watanabe [Mon, 20 May 2019 02:47:24 +0000 (11:47 +0900)]
test-network: add tests for Mode= setting in [MACVTAP] section
Yu Watanabe [Mon, 20 May 2019 02:39:05 +0000 (11:39 +0900)]
test-network: add tests for Mode= setting in [MACVLAN] section
Yu Watanabe [Mon, 20 May 2019 01:43:50 +0000 (10:43 +0900)]
test-network: convert jiffies to sec
Yu Watanabe [Mon, 20 May 2019 01:23:28 +0000 (10:23 +0900)]
test-network: show interface status when wait_online() fails
Yu Watanabe [Mon, 20 May 2019 01:18:26 +0000 (10:18 +0900)]
test-network: use wait_online() more
Yu Watanabe [Mon, 20 May 2019 01:05:50 +0000 (10:05 +0900)]
test-network: introduce check_link_exists()
Yu Watanabe [Mon, 20 May 2019 01:02:29 +0000 (10:02 +0900)]
test-network: use wait_online() more
Yu Watanabe [Mon, 20 May 2019 00:40:30 +0000 (09:40 +0900)]
test-network: use splitlines() at one more place
Susant Sahani [Wed, 22 May 2019 08:53:12 +0000 (14:23 +0530)]
networkctl: add support to display Transmit/Recieve queue length (#12633)
```
(networkctl)⚡ % build/networkctl status veth-test
● 13: veth-test
Link File: /usr/lib/systemd/network/99-default.link
Network File: /usr/lib/systemd/network/veth0.network
Type: ether
State: routable (configured)
Driver: veth
HW Address: 8a:a6:1c:3f:a6:1a
MTU: 1500
Minimum MTU: 68
Maximum MTU: 65535
Transmit Queue Length: 1
Receive Queue Length: 1
Address: 192.168.5.31
fe80::88a6:1cff:fe3f:a61a
Gateway: 192.168.5.1
DNS: 192.168.5.1
NTP: 192.168.5.1
Time Zone: Asia/Kolkata
Connected To: Zeus on port peer-test
```
ven [Wed, 22 May 2019 06:24:28 +0000 (14:24 +0800)]
bus_open leak sd_event_source when udevadm trigger。
On my host, when executing the udevadm trigger, I only receive the change event, which causes memleak
Zbigniew Jędrzejewski-Szmek [Wed, 22 May 2019 08:20:52 +0000 (10:20 +0200)]
basic/utf8: reduce memory usage
Zbigniew Jędrzejewski-Szmek [Thu, 16 May 2019 15:44:57 +0000 (17:44 +0200)]
Add 8bit-version of get_process_cmdline() and use in cgroup-show.c
This restores show_pid_array() output in legacy locales on the console.
Only one call to get_process_cmdline() is changed, all others retain
utf8-only mode. This affects systemd-cgls, systemctl status, etc, when
working locally.
Calls to get_process_cmdline() that cross a process boundary always use
utf8. It's the callers responsibility to convert this to some encoding that
they use. This means that we always pass utf8 over the bus.
Zbigniew Jędrzejewski-Szmek [Thu, 16 May 2019 10:14:52 +0000 (12:14 +0200)]
basic/process-util: convert bool arg to flags
In preparation for the next commit…
Zbigniew Jędrzejewski-Szmek [Thu, 16 May 2019 11:12:37 +0000 (13:12 +0200)]
basic/escape: add truncation to xescape too
This does for ASCII and non-unicode encodings what utf8_escape_non_printable_full()
does for utf8-based encodings.
Zbigniew Jędrzejewski-Szmek [Wed, 15 May 2019 09:56:16 +0000 (11:56 +0200)]
TODO: update
Zbigniew Jędrzejewski-Szmek [Wed, 15 May 2019 09:55:59 +0000 (11:55 +0200)]
util-lib: do not truncate kernel comm names
It turns out that the kernel allows comm names higher than our expected limit
of 16.
$ wc -c /proc/*/comm|sort -g|tail -n3
35 /proc/1292317/comm
35 /proc/1293610/comm
36 /proc/1287112/comm
$ cat /proc/1287112/comm
kworker/u9:3-kcryptd/253:0
Zbigniew Jędrzejewski-Szmek [Wed, 15 May 2019 09:20:26 +0000 (11:20 +0200)]
Rework cmdline printing to use unicode
The functions to retrieve and print process cmdlines were based on the
assumption that they contain printable ASCII, and everything else
should be filtered out. That assumption doesn't hold in today's world,
where people are free to use unicode everywhere.
This replaces the custom cmdline reading code with a more generic approach
using utf8_escape_non_printable_full().
For kernel threads, truncation is done on the parenthesized name, so we'll
get "[worker]", "[worker…]", …, "[w…]", "[…", "…" as we reduce the number of
available columns.
This implementation is most likely slower for very long cmdlines, but I don't
think this is very important. The common case is to have short commandlines,
and should print those properly. Absurdly long cmdlines are the exception,
which needs to be handled correctly and safely, but speed is not too important.
Fixes #12532.
v2:
- use size_t for the number of columns. This change propagates into various
other functions that call get_process_cmdline(), increasing the size of the
patch, but the changes are rather trivial.
Zbigniew Jędrzejewski-Szmek [Wed, 15 May 2019 08:57:07 +0000 (10:57 +0200)]
util-lib: add truncation based on printable width to utf8_escape_non_printable()
Zhang Xianwei [Mon, 13 May 2019 10:41:55 +0000 (18:41 +0800)]
udev/scsi_id: fix incorrect page length when get device identification VPD page
The length of device identification VPD page is filled with two bytes,
but scsi_id only gets the low byte. Fix it.
Signed-off-by: Zhang Xianwei <zhang.xianwei8@zte.com.cn>
Yu Watanabe [Tue, 21 May 2019 17:35:06 +0000 (02:35 +0900)]
Merge pull request #12629 from ssahani/networkctl
networkctl: MTU enhancements
Lennart Poettering [Tue, 21 May 2019 16:29:01 +0000 (18:29 +0200)]
Merge pull request #12626 from keszybz/oompolicy-check
Make the check if oom-killer fired more robust