]> git.ipfire.org Git - thirdparty/systemd.git/log
thirdparty/systemd.git
4 years agosrc/basic/missing_syscall: add s390 syscall number for __NR_pkey_mprotect
Dan Streetman [Wed, 24 Jul 2019 23:58:48 +0000 (19:58 -0400)] 
src/basic/missing_syscall: add s390 syscall number for __NR_pkey_mprotect

The syscall number for s390 was added to the kernel at:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=b41c51c8e194c0bdfb4b1778a137aea8246c86cd

4 years agoTODO: add more, and drop implemented stuff
Lennart Poettering [Tue, 13 Aug 2019 12:40:30 +0000 (14:40 +0200)] 
TODO: add more, and drop implemented stuff

4 years agotest: store coredumps in journal
Frantisek Sumsal [Mon, 12 Aug 2019 22:14:54 +0000 (00:14 +0200)] 
test: store coredumps in journal

To make debugging much easier, especially for crashes in tests under
QEMU, let's store the entire coredump bundle in the systemd journal,
which is usually kept around by various CIs. Right now, we usually end
up with a journal, but without the coredump itself, which is pretty
useless.

4 years agohwdb: Add axis overrides for HP Envy x360 (#13304)
William Wold [Mon, 12 Aug 2019 22:03:55 +0000 (18:03 -0400)] 
hwdb: Add axis overrides for HP Envy x360 (#13304)

4 years agoMerge pull request #13303 from yuwata/bootctl-segfaults
Frantisek Sumsal [Mon, 12 Aug 2019 19:16:51 +0000 (19:16 +0000)] 
Merge pull request #13303 from yuwata/bootctl-segfaults

bootctl: fix segfaults

4 years agonetworkd: Keep track of static neighbors
William A. Kennington III [Fri, 19 Apr 2019 07:53:34 +0000 (00:53 -0700)] 
networkd: Keep track of static neighbors

We need to keep track of the static neighbors that are configured on the
interface so that we can delete stale entries that were removed.

4 years agobootctl: arg_dolloar_boot_path() may return NULL 13303/head
Yu Watanabe [Sun, 11 Aug 2019 15:05:28 +0000 (00:05 +0900)] 
bootctl: arg_dolloar_boot_path() may return NULL

4 years agobootctl: clear arg_xbootldr_path when acquire_xbootldr() succeeds
Yu Watanabe [Sun, 11 Aug 2019 15:04:44 +0000 (00:04 +0900)] 
bootctl: clear arg_xbootldr_path when acquire_xbootldr() succeeds

4 years agoman: add example for IPv6 Prefix Delegation
frederik [Fri, 9 Aug 2019 10:09:26 +0000 (12:09 +0200)] 
man: add example for IPv6 Prefix Delegation

4 years agofirstboot: drop duplicate trailing whitespace from root pw question
Lennart Poettering [Fri, 9 Aug 2019 14:35:36 +0000 (16:35 +0200)] 
firstboot: drop duplicate trailing whitespace from root pw question

Since ask_password() (and related calls) already append one char, we
ended up appending two. That's not pretty. Let's fix this, and do it
like in all other cases ask_password() (or an equivalent function) is
called.

4 years agodocs: fix env var name in random seed markdown documentation
Lennart Poettering [Thu, 8 Aug 2019 11:31:40 +0000 (13:31 +0200)] 
docs: fix env var name in random seed markdown documentation

4 years agoFix typo in `analyze-security.c`.
Johannes Christ [Sat, 10 Aug 2019 12:41:52 +0000 (14:41 +0200)] 
Fix typo in `analyze-security.c`.

4 years agofuzzit: get MSan to track origins
Evgeny Vereshchagin [Thu, 8 Aug 2019 18:30:44 +0000 (18:30 +0000)] 
fuzzit: get MSan to track origins

It's just a follow-up to https://github.com/systemd/systemd/pull/13281
that should make it a little bit easier to make sense of
MSan reports.

https://clang.llvm.org/docs/MemorySanitizer.html#origin-tracking

4 years agoMerge pull request #13281 from evverx/unleash-msan
Evgeny Vereshchagin [Thu, 8 Aug 2019 15:38:21 +0000 (18:38 +0300)] 
Merge pull request #13281 from evverx/unleash-msan

fuzzit: an attempt to unleash MSan on all the fuzzers

4 years agofuzzit: collapse a series of commands 13281/head
Evgeny Vereshchagin [Thu, 8 Aug 2019 13:23:53 +0000 (13:23 +0000)] 
fuzzit: collapse a series of commands

Now that the ids are gone, we can generate commands simply
using names as we go

4 years agofuzzit: switch to a new organization
Evgeny Vereshchagin [Thu, 8 Aug 2019 11:56:23 +0000 (11:56 +0000)] 
fuzzit: switch to a new organization

4 years agoman: Fix grammar in systemd.kill.xml
Matthew Leeds [Wed, 7 Aug 2019 20:10:50 +0000 (13:10 -0700)] 
man: Fix grammar in systemd.kill.xml

4 years agofuzzit: unleash MSan on all the fuzzers
Evgeny Vereshchagin [Wed, 7 Aug 2019 21:45:19 +0000 (21:45 +0000)] 
fuzzit: unleash MSan on all the fuzzers

4 years agologind: set description for inhibitor event source
Lennart Poettering [Mon, 15 Jul 2019 18:29:21 +0000 (20:29 +0200)] 
logind: set description for inhibitor event source

4 years agonetworkd: Routes should take the gateway into account
William A. Kennington III [Fri, 19 Apr 2019 00:52:28 +0000 (17:52 -0700)] 
networkd: Routes should take the gateway into account

Otherwise, changing the default gateway doesn't purge old gateway routes
left on the system during daemon restart. This also fixes removing other
foreign gateway routes that don't match the expected configuration.

Tested:
    Changed gateway addresses prior to the patch and they lingered on
    the system during each reconfiguration. Applied this patch and
    reconfigured gateways and other routes multiple times and it removed
    the foreign routes that had gateways that didn't match.

Signed-off-by: William A. Kennington III <william@wkennington.com>
4 years agoMerge pull request #13265 from keszybz/timedated-ntp-logging
Yu Watanabe [Tue, 6 Aug 2019 23:07:57 +0000 (08:07 +0900)] 
Merge pull request #13265 from keszybz/timedated-ntp-logging

Timedated logging and service priority

4 years agotimedated: always enable&start the service with highest priority 13265/head
Zbigniew Jędrzejewski-Szmek [Mon, 5 Aug 2019 10:50:11 +0000 (12:50 +0200)] 
timedated: always enable&start the service with highest priority

This removes a special case that was implemented before: if some service
was already enabled, we'd treat it as having higher priority.

From https://bugzilla.redhat.com/show_bug.cgi?id=1735584#c4:
> Setting ntp off and on should give the same result as just setting it
> on. There should be no stickiness (hidden state). It should behave like
> running an ansible role.
>
> The other service might have been enabled because no other was installed at
> the time. If I install a new NTP service with a higher priority, setting ntp
> on should enable and start the new service, and disable all other. Also, if
> for some reason multiple services are enabled, after setting ntp on there
> should be only one enabled to avoid systemd selecting between them randomly
> on the next boot.

4 years agosystemctl: Add unit file states to state help message
Ronan Pigott [Tue, 6 Aug 2019 02:07:31 +0000 (19:07 -0700)] 
systemctl: Add unit file states to state help message

4 years agoman: fix typo in resolvectl(1) man page
Ronan Pigott [Mon, 5 Aug 2019 22:41:16 +0000 (15:41 -0700)] 
man: fix typo in resolvectl(1) man page

4 years agotimedated: log about unit enablement actions and enhance logs in general
Zbigniew Jędrzejewski-Szmek [Sun, 4 Aug 2019 09:06:59 +0000 (11:06 +0200)] 
timedated: log about unit enablement actions and enhance logs in general

The general idea is that for things which can occur repeatedly, like SetNTP
being called with the same argument, we only log at debug level. For things
which change state, like when we realize that a unit that wasn't enabled
before needs to be enabled, we log at info level.

Also, don't return success if there are no units loaded.

4 years agounit: drop Before=sysinit.target from systemd-random-seed.service
Yu Watanabe [Sun, 4 Aug 2019 23:05:54 +0000 (08:05 +0900)] 
unit: drop Before=sysinit.target from systemd-random-seed.service

Follow-up for 26ded55709947d936634f1de0f43dcf88f594621.

The commit says,

> Note that with this change sysinit.target (and thus early boot) is NOT
systematically delayed until the entropy pool is initialized,

But the dependency was not dropped.

This was found by David Seifert (@SoapGentoo).

4 years agomeson: create (empty) /etc/systemd/system during installation
Zbigniew Jędrzejewski-Szmek [Mon, 5 Aug 2019 13:02:13 +0000 (15:02 +0200)] 
meson: create (empty) /etc/systemd/system during installation

We explicitly create /etc/systemd/user and other parts of the basic directory
tree. I think we should create /etc/systemd/system too. (The alternative would
be to not create those other directories too, but I think it's nice to have
the basic directory structure in place after installation.)

https://bugzilla.redhat.com/show_bug.cgi?id=1737362

4 years agoMerge pull request #12884 from mrc0mmand/numapolicy-test
Frantisek Sumsal [Mon, 5 Aug 2019 18:02:40 +0000 (18:02 +0000)] 
Merge pull request #12884 from mrc0mmand/numapolicy-test

test: introduce TEST-36-NUMAPOLICY

4 years agoshared/exit-status: fix off-by-one in comment 12884/head
Zbigniew Jędrzejewski-Szmek [Mon, 5 Aug 2019 14:37:53 +0000 (16:37 +0200)] 
shared/exit-status: fix off-by-one in comment

4 years agoshared/exit-status: fix lookup
Zbigniew Jędrzejewski-Szmek [Mon, 5 Aug 2019 14:36:45 +0000 (16:36 +0200)] 
shared/exit-status: fix lookup

FLAGS_SET() is the wrong operator here, because we want to see if
*any* bits are set. Add test.

https://github.com/systemd/systemd/pull/12884#issuecomment-518238410

4 years agoMerge pull request #13258 from yuwata/login-revert-handle-ignore-assertion
Zbigniew Jędrzejewski-Szmek [Mon, 5 Aug 2019 13:43:23 +0000 (15:43 +0200)] 
Merge pull request #13258 from yuwata/login-revert-handle-ignore-assertion

Revert "logind: remove unused check"

4 years agotest: add a simple sanity check for systems without NUMA support
Frantisek Sumsal [Mon, 5 Aug 2019 12:38:45 +0000 (14:38 +0200)] 
test: add a simple sanity check for systems without NUMA support

4 years agotest: give strace some time to initialize
Frantisek Sumsal [Mon, 22 Jul 2019 22:56:04 +0000 (00:56 +0200)] 
test: give strace some time to initialize

The `coproc` implementation seems to be a little bit different in older
bash versions, so the `strace` is sometimes started AFTER `systemctl
daemon-reload`, which causes unexpected fails. Let's help it a little by
sleeping for a bit.

4 years agotest: skip the test on systems without NUMA support
Frantisek Sumsal [Tue, 2 Jul 2019 07:52:45 +0000 (09:52 +0200)] 
test: skip the test on systems without NUMA support

4 years agotest: make sure the strace process is indeed dead
Frantisek Sumsal [Mon, 1 Jul 2019 17:53:45 +0000 (19:53 +0200)] 
test: make sure the strace process is indeed dead

It may take a few moments for the strace process to properly terminate
and write all logs to the backing storage

4 years agotest: support MPOL_LOCAL matching in unpatched strace versions
Frantisek Sumsal [Mon, 1 Jul 2019 11:08:26 +0000 (13:08 +0200)] 
test: support MPOL_LOCAL matching in unpatched strace versions

The MPOL_LOCAL constant is not recognized in current strace versions.
Let's match at least the numerical value of this constant until the
strace patch is approved & merged.

4 years agotest: replace `tail -f` with journal cursor which should be...
Frantisek Sumsal [Mon, 1 Jul 2019 07:27:59 +0000 (09:27 +0200)] 
test: replace `tail -f` with journal cursor which should be...

more reliable

4 years agotest: introduce TEST-36-NUMAPOLICY
Frantisek Sumsal [Tue, 25 Jun 2019 21:01:40 +0000 (23:01 +0200)] 
test: introduce TEST-36-NUMAPOLICY

4 years agotest: allow overriding QEMU_OPTIONS from the outside
Frantisek Sumsal [Tue, 25 Jun 2019 20:45:15 +0000 (22:45 +0200)] 
test: allow overriding QEMU_OPTIONS from the outside

4 years agoudev: do not try to import properties on commented out lines
Yu Watanabe [Sat, 3 Aug 2019 21:08:06 +0000 (06:08 +0900)] 
udev: do not try to import properties on commented out lines

Fixes #13257.

4 years agotimedated: minor code simplifications
Zbigniew Jędrzejewski-Szmek [Sun, 4 Aug 2019 09:06:33 +0000 (11:06 +0200)] 
timedated: minor code simplifications

4 years agoMerge pull request #13256 from keszybz/minor-sd-network-cleanup
Yu Watanabe [Sun, 4 Aug 2019 08:07:03 +0000 (17:07 +0900)] 
Merge pull request #13256 from keszybz/minor-sd-network-cleanup

Minor sd-network cleanup and other coverity-inspired changes

4 years agoRevert "logind: remove unused check" 13258/head
Yu Watanabe [Sat, 3 Aug 2019 20:43:34 +0000 (05:43 +0900)] 
Revert "logind: remove unused check"

This reverts commit f2330acda408a34451d5e15380fcdd225a672473.

Fixes #13255.

4 years agologin: drop space in empty line
Yu Watanabe [Sat, 3 Aug 2019 20:42:53 +0000 (05:42 +0900)] 
login: drop space in empty line

4 years agopid1: replace asprintf() with strjoin() 13256/head
Zbigniew Jędrzejewski-Szmek [Sat, 3 Aug 2019 15:46:56 +0000 (17:46 +0200)] 
pid1: replace asprintf() with strjoin()

It's nicer. And coverity doesn't need to complain about unchecked return
value (CID#1401780).

4 years agosd-hwdb: use return value from ordered_hashmap_iterate()
Zbigniew Jędrzejewski-Szmek [Sat, 3 Aug 2019 15:43:51 +0000 (17:43 +0200)] 
sd-hwdb: use return value from ordered_hashmap_iterate()

Why not? Coverity CID#1402329.

4 years agolibsystemd-network: make option_append() atomic and make the code a bit clearer
Zbigniew Jędrzejewski-Szmek [Sat, 3 Aug 2019 14:49:39 +0000 (16:49 +0200)] 
libsystemd-network: make option_append() atomic and make the code a bit clearer

Comparisons are done in the normal order (if (need > available), not if (available < need)),
variables have reduced scope and are renamed for clarity.

The only functional change is that if we return -ENAMETOOLONG, we do that
without modifying the options[] array.

I also added an explanatory comment. The use of one offset to point into three
buffers is not obvious.

Coverity (in CID#1402354) says that sname might be accessed at bad offset, but
I cannot see this happening. We check for available space before writing anything.

4 years agounit: make logind can access ESP
Yu Watanabe [Fri, 2 Aug 2019 20:05:43 +0000 (05:05 +0900)] 
unit: make logind can access ESP

Fixes the following error:
```
logind[601]: Failed to open file system "/dev/block/259:1": Operation not permitted
```

4 years agoMerge pull request #13253 from yuwata/udev-update-logs
Zbigniew Jędrzejewski-Szmek [Sat, 3 Aug 2019 12:15:52 +0000 (14:15 +0200)] 
Merge pull request #13253 from yuwata/udev-update-logs

udev: update log messages

4 years agoudev-node: fix misleading log messages 13253/head
Yu Watanabe [Fri, 2 Aug 2019 21:04:34 +0000 (06:04 +0900)] 
udev-node: fix misleading log messages

This fixes the following logs:
```
drm_dp_aux2: Handling device node '/dev/drm_dp_aux2', devnum=c238:2, mode=037777777777, uid=4294967295, gid=4294967295
drm_dp_aux2: Preserve permissions of /dev/drm_dp_aux2, 037777777777, uid=4294967295, gid=4294967295
```

4 years agoudev-event: log device name on spawning commands
Yu Watanabe [Fri, 2 Aug 2019 20:38:13 +0000 (05:38 +0900)] 
udev-event: log device name on spawning commands

4 years agotime-util: improve detection of synchronized clock
Miroslav Lichvar [Thu, 1 Aug 2019 09:47:18 +0000 (11:47 +0200)] 
time-util: improve detection of synchronized clock

Instead of checking for the STA_UNSYNC flag in the timex status, check
the maximum error. It is updated by the kernel, increasing at a rate of
500 ppm. The maximum value is 16 seconds, which triggers the STA_UNSYNC
flag.

This follows timedatex and allows timedated to correctly detect a clock
synchronized by chronyd when configured to not synchronize the RTC.

4 years agoMerge pull request #13243 from keszybz/two-cryptsetup-quickfixes
Zbigniew Jędrzejewski-Szmek [Thu, 1 Aug 2019 15:31:12 +0000 (17:31 +0200)] 
Merge pull request #13243 from keszybz/two-cryptsetup-quickfixes

Two cryptsetup quickfixes

4 years agocryptsetup: don't assert on variable which is optional 13243/head
Zbigniew Jędrzejewski-Szmek [Thu, 1 Aug 2019 06:15:43 +0000 (08:15 +0200)] 
cryptsetup: don't assert on variable which is optional

https://github.com/systemd/systemd/commit/50d2eba27b9bfc77ef6b40e5721713846815418b#commitcomment-34519739

In add_crypttab_devices() split_keyspec is called on the keyfile argument,
which may be NULL.

4 years agocryptsetup: use unabbrieviated variable names
Zbigniew Jędrzejewski-Szmek [Thu, 1 Aug 2019 06:13:13 +0000 (08:13 +0200)] 
cryptsetup: use unabbrieviated variable names

Now that "ret_" has been added to the output variables, we can name
the internal variables without artificial abbrevs.

4 years agoMerge pull request #13225 from mrc0mmand/networkd-test-replace-adduser-with-useradd
Frantisek Sumsal [Wed, 31 Jul 2019 18:59:03 +0000 (18:59 +0000)] 
Merge pull request #13225 from mrc0mmand/networkd-test-replace-adduser-with-useradd

test: use `useradd` instead of `adduser`

4 years agotest: print an error when networkctl returns an unexpected EC 13225/head
Frantisek Sumsal [Tue, 30 Jul 2019 18:27:34 +0000 (20:27 +0200)] 
test: print an error when networkctl returns an unexpected EC

If networkctl crashes, like recently with SIGABRT, it returns absolutely
no output, which may be confusing during debugging. Help it a little
with a short informative message.

4 years agoanalyze-security: move assert above first use of the variable (#13238)
Jan Synacek [Wed, 31 Jul 2019 14:13:35 +0000 (16:13 +0200)] 
analyze-security: move assert above first use of the variable (#13238)

4 years agoMerge pull request #13239 from poettering/coverity-fixes
Zbigniew Jędrzejewski-Szmek [Wed, 31 Jul 2019 14:08:52 +0000 (16:08 +0200)] 
Merge pull request #13239 from poettering/coverity-fixes

four coverity fixes

4 years agoman: reword DeviceAllow= documentation
Lennart Poettering [Wed, 31 Jul 2019 08:20:16 +0000 (10:20 +0200)] 
man: reword DeviceAllow= documentation

Don't claim we'd use cgroup.deny much. It's just a way to remove stuff
from device lists, which is nothing we allow users to explicitly
configure.

Also, extend documentation when wildcards may be used, and when not.

4 years agojob: fix coverity issue 13239/head
Lennart Poettering [Wed, 31 Jul 2019 07:44:28 +0000 (09:44 +0200)] 
job: fix coverity issue

Fixes coverity issue 1403550

4 years agotest-chase-symlinks: fix coverity issue
Lennart Poettering [Wed, 31 Jul 2019 07:42:24 +0000 (09:42 +0200)] 
test-chase-symlinks: fix coverity issue

Fixes coverity issue 1403708

4 years agounit-file: fix coverity issue
Lennart Poettering [Wed, 31 Jul 2019 07:39:12 +0000 (09:39 +0200)] 
unit-file: fix coverity issue

Fixes coverity issue 1403820

4 years agocryptsetup-generator: fix coverity issue
Lennart Poettering [Wed, 31 Jul 2019 07:38:15 +0000 (09:38 +0200)] 
cryptsetup-generator: fix coverity issue

Fixes coverity issue 1403772

4 years agoNEWS: Remove DisableControllers from v243
Chris Down [Wed, 31 Jul 2019 02:51:10 +0000 (03:51 +0100)] 
NEWS: Remove DisableControllers from v243

We already released this in v240 and had a NEWS entry then.

4 years agotest-execute: skip test_exec_systemcallfilter_system under ASan
Frantisek Sumsal [Tue, 30 Jul 2019 19:22:10 +0000 (21:22 +0200)] 
test-execute: skip test_exec_systemcallfilter_system under ASan

This particular test case keeps intermittently failing due to crashing
LSan  when running under clang+ASan. Generally, sanitizers don't
like seccomp filters, so the best option here is to just switch this
test off for this scenario.

4 years agoanalyze: declare dump_exit_status outside of HAVE_SECCOMP block
Mike Gilbert [Tue, 30 Jul 2019 18:51:38 +0000 (14:51 -0400)] 
analyze: declare dump_exit_status outside of HAVE_SECCOMP block

Fixes: 76ed04d936f757763c32db5dbaaebd8b13785d7b
Closes: https://github.com/systemd/systemd/issues/13230
4 years agopo: update Polish translation
Piotr Drąg [Mon, 29 Jul 2019 15:54:38 +0000 (17:54 +0200)] 
po: update Polish translation

4 years agotest: use `useradd` instead of `adduser`
Frantisek Sumsal [Tue, 30 Jul 2019 12:27:44 +0000 (14:27 +0200)] 
test: use `useradd` instead of `adduser`

`adduser` is in certain cases a standalone package which provides a
better user experience. In other cases it's just a symlink to `useradd`.
And some distributions don't have `adduser` at all, like Arch Linux.
Let's use the `useradd` binary instead, which should provide the same
functionality everywhere.

4 years agoboot: fix build with gnu-efi older than 3.0.5 v243-rc1
Yu Watanabe [Tue, 30 Jul 2019 14:14:05 +0000 (23:14 +0900)] 
boot: fix build with gnu-efi older than 3.0.5

4 years agoMerge pull request #13119 from keszybz/unit-loading-2
Lennart Poettering [Tue, 30 Jul 2019 15:55:37 +0000 (17:55 +0200)] 
Merge pull request #13119 from keszybz/unit-loading-2

Rework unit loading to take into account all aliases

4 years agoNEWS: more entries and some rewordings
Zbigniew Jędrzejewski-Szmek [Tue, 30 Jul 2019 14:21:21 +0000 (16:21 +0200)] 
NEWS: more entries and some rewordings

4 years agobash-completion: support "systemd-analyze exit-status"
Yu Watanabe [Tue, 30 Jul 2019 14:39:10 +0000 (23:39 +0900)] 
bash-completion: support "systemd-analyze exit-status"

4 years agoMerge pull request #13189 from yuwata/network-initrd-generator-unit
Zbigniew Jędrzejewski-Szmek [Tue, 30 Jul 2019 14:38:59 +0000 (16:38 +0200)] 
Merge pull request #13189 from yuwata/network-initrd-generator-unit

unit: update initrd-network-generator.service

4 years agonetworkctl: TABLE_BPS requires uint64_t
Yu Watanabe [Tue, 30 Jul 2019 10:29:44 +0000 (19:29 +0900)] 
networkctl: TABLE_BPS requires uint64_t

4 years agotest-unit-file: allow printing of information about specific units 13119/head
Zbigniew Jędrzejewski-Szmek [Tue, 30 Jul 2019 10:29:18 +0000 (12:29 +0200)] 
test-unit-file: allow printing of information about specific units

Useful for manual debugging.

4 years agopid1: drop unit caches only based on mtime
Zbigniew Jędrzejewski-Szmek [Wed, 10 Jul 2019 16:01:13 +0000 (18:01 +0200)] 
pid1: drop unit caches only based on mtime

v2:
- do not watch mtime of transient and generated dirs

  We'd reload the map after every transient unit we created, which we don't
  need to do, since we create those units ourselves and know their fragment
  path.

4 years agoanalyze: add "unit-files" to dump the unit fragment map
Zbigniew Jędrzejewski-Szmek [Mon, 8 Jul 2019 15:33:25 +0000 (17:33 +0200)] 
analyze: add "unit-files" to dump the unit fragment map

I'm not convinced that this is useful enough to be included... But it is
certainly nice when debugging.

4 years agopid1: use a cache for all unit aliases
Zbigniew Jędrzejewski-Szmek [Thu, 18 Jul 2019 11:11:28 +0000 (13:11 +0200)] 
pid1: use a cache for all unit aliases

This reworks how we load units from disk. Instead of chasing symlinks every
time we are asked to load a unit by name, we slurp all symlinks from disk
and build two hashmaps:
1. from unit name to either alias target, or fragment on disk
   (if an alias, we put just the target name in the hashmap, if a fragment
    we put an absolute path, so we can distinguish both).
2. from a unit name to all aliases

Reading all this data can be pretty costly (40 ms) on my machine, so we keep it
around for reuse.

The advantage is that we can reliably know what all the aliases of a given unit
are. This means we can reliably load dropins under all names. This fixes #11972.

4 years agoshared/unit-file: add a function to validate unit alias symlinks
Zbigniew Jędrzejewski-Szmek [Tue, 2 Apr 2019 09:22:56 +0000 (11:22 +0200)] 
shared/unit-file: add a function to validate unit alias symlinks

It turns out most possible symlinks are invalid, because the type has to match,
and template units can only be linked to template units.

I'm not sure if the existing code made the same checks consistently. At least
I don't see the same rules expressed in a single place.

4 years agoTEST-15-DROPIN: add test for details of unit aliasing
Zbigniew Jędrzejewski-Szmek [Tue, 30 Jul 2019 10:28:48 +0000 (12:28 +0200)] 
TEST-15-DROPIN: add test for details of unit aliasing

I adjusted the tests to pass. I don't think the behaviour makes much sense,
even if we ignore the issue with "lazy loading" of aliases. E.g. in the
last section, the fact that dropins for yup@.service and yup@3.service are
not loaded seems to be a plain old bug.

4 years agotest: use "ln -fs"
Zbigniew Jędrzejewski-Szmek [Tue, 30 Jul 2019 07:33:58 +0000 (09:33 +0200)] 
test: use "ln -fs"

Without this, repeated runs of "make -C TEST/... setup" fail when trying
to create the symlink.

4 years agodocs: fix typo
Simon Schricker [Tue, 30 Jul 2019 06:00:21 +0000 (08:00 +0200)] 
docs: fix typo

4 years agoMerge pull request #13219 from poettering/named-exit-codes-tweaks
Zbigniew Jędrzejewski-Szmek [Tue, 30 Jul 2019 06:27:20 +0000 (08:27 +0200)] 
Merge pull request #13219 from poettering/named-exit-codes-tweaks

quick follow-up for the symbolic exit status PR #13207

4 years agoupdate TODO
Lennart Poettering [Mon, 29 Jul 2019 17:57:08 +0000 (19:57 +0200)] 
update TODO

4 years agoMerge pull request #13216 from poettering/busctl-format-table
Lennart Poettering [Mon, 29 Jul 2019 18:44:54 +0000 (20:44 +0200)] 
Merge pull request #13216 from poettering/busctl-format-table

port "busctl list" to format-table.h

4 years agoMerge pull request #13217 from poettering/TODO-updates
Lennart Poettering [Mon, 29 Jul 2019 18:44:39 +0000 (20:44 +0200)] 
Merge pull request #13217 from poettering/TODO-updates

udev: warn if rules files are executable

4 years agoshared/install: typo
Zbigniew Jędrzejewski-Szmek [Sat, 27 Jul 2019 11:55:29 +0000 (13:55 +0200)] 
shared/install: typo

4 years agoMerge pull request #13004 from shinygold/master
Lennart Poettering [Mon, 29 Jul 2019 17:48:13 +0000 (19:48 +0200)] 
Merge pull request #13004 from shinygold/master

cryptsetup: Improve support for keyfiles on removable storage

4 years agoanalyze: clarify that 'exit-status' optionally takes arguments 13219/head
Lennart Poettering [Mon, 29 Jul 2019 17:44:24 +0000 (19:44 +0200)] 
analyze: clarify that 'exit-status' optionally takes arguments

4 years agoMerge pull request #13201 from yuwata/networkctl-merge-table_add_cell
Lennart Poettering [Mon, 29 Jul 2019 17:32:14 +0000 (19:32 +0200)] 
Merge pull request #13201 from yuwata/networkctl-merge-table_add_cell

networkctl cleanups and improvements

4 years agounit: rename initrd-network-generator.service -> systemd-network-generator.service 13189/head
Yu Watanabe [Mon, 29 Jul 2019 15:58:00 +0000 (00:58 +0900)] 
unit: rename initrd-network-generator.service -> systemd-network-generator.service

4 years agonetwork-generator: rename generated unit files
Yu Watanabe [Mon, 29 Jul 2019 15:50:19 +0000 (00:50 +0900)] 
network-generator: rename generated unit files

The tool may be used in the initrd-less systems.

4 years agologind: notify dbus of changes to session State
Thiebaud Weksteen [Mon, 29 Jul 2019 12:24:03 +0000 (14:24 +0200)] 
logind: notify dbus of changes to session State

This adds the option to monitor transitions between the state Opening ->
Active.

4 years agoman: remove trailing space in link in HTML output
Lennart Poettering [Mon, 29 Jul 2019 17:25:49 +0000 (19:25 +0200)] 
man: remove trailing space in link in HTML output

4 years agoanalyze: right-align exit status column
Lennart Poettering [Mon, 29 Jul 2019 17:22:34 +0000 (19:22 +0200)] 
analyze: right-align exit status column

4 years agoanalyze: rename "exit-codes" to "exit-status"
Lennart Poettering [Mon, 29 Jul 2019 17:18:56 +0000 (19:18 +0200)] 
analyze: rename "exit-codes" to "exit-status"

waitid(2) and the libc function signature calls this "exit status", and
uses "exit code" for something different. Let's stick to the same
nomenclature hence.

4 years agoanalyze: always use "int" to display exit status values
Lennart Poettering [Mon, 29 Jul 2019 17:14:09 +0000 (19:14 +0200)] 
analyze: always use "int" to display exit status values

That's what it actually is, hence let's use that and cast when the type
is bigger.

4 years agoexit-status: rename EXIT_STATUS_GLIBC → EXIT_STATUS_LIBC
Lennart Poettering [Mon, 29 Jul 2019 17:05:25 +0000 (19:05 +0200)] 
exit-status: rename EXIT_STATUS_GLIBC → EXIT_STATUS_LIBC

After all these two exit codes are defined by ISO C as part of the C
library, and it's not the GNU implementation defines them.

4 years agoMerge pull request #13207 from keszybz/symbolic-exit-code-names
Lennart Poettering [Mon, 29 Jul 2019 16:58:06 +0000 (18:58 +0200)] 
Merge pull request #13207 from keszybz/symbolic-exit-code-names

Symbolic exit code names