1
1
mirror of https://github.com/systemd/systemd-stable.git synced 2025-02-08 05:57:26 +03:00

41855 Commits

Author SHA1 Message Date
HATAYAMA Daisuke
5aab35aac9 core, job: fix breakage of ordering dependencies by systemctl reload command
Currently, systemctl reload command breaks ordering dependencies if it's
executed when its target service unit is in activating state.

For example, prepare A.service, B.service and C.target as follows:

    # systemctl cat A.service B.service C.target
    # /etc/systemd/system/A.service
    [Unit]
    Description=A

    [Service]
    Type=oneshot
    ExecStart=/usr/bin/echo A1
    ExecStart=/usr/bin/sleep 60
    ExecStart=/usr/bin/echo A2
    ExecReload=/usr/bin/echo A reloaded
    RemainAfterExit=yes

    # /etc/systemd/system/B.service
    [Unit]
    Description=B
    After=A.service

    [Service]
    Type=oneshot
    ExecStart=/usr/bin/echo B
    RemainAfterExit=yes

    # /etc/systemd/system/C.target
    [Unit]
    Description=C
    Wants=A.service B.service

Start them.

    # systemctl daemon-reload
    # systemctl start C.target

Then, we have:

    # LANG=C journalctl --no-pager -u A.service -u B.service -u C.target -b
    -- Logs begin at Mon 2019-09-09 00:25:06 EDT, end at Thu 2019-10-24 22:28:47 EDT. --
    Oct 24 22:27:47 localhost.localdomain systemd[1]: Starting A...
    Oct 24 22:27:47 localhost.localdomain systemd[1]: A.service: Child 967 belongs to A.service.
    Oct 24 22:27:47 localhost.localdomain systemd[1]: A.service: Main process exited, code=exited, status=0/SUCCESS
    Oct 24 22:27:47 localhost.localdomain systemd[1]: A.service: Running next main command for state start.
    Oct 24 22:27:47 localhost.localdomain systemd[1]: A.service: Passing 0 fds to service
    Oct 24 22:27:47 localhost.localdomain systemd[1]: A.service: About to execute: /usr/bin/sleep 60
    Oct 24 22:27:47 localhost.localdomain systemd[1]: A.service: Forked /usr/bin/sleep as 968
    Oct 24 22:27:47 localhost.localdomain systemd[968]: A.service: Executing: /usr/bin/sleep 60
    Oct 24 22:27:52 localhost.localdomain systemd[1]: A.service: Trying to enqueue job A.service/reload/replace
    Oct 24 22:27:52 localhost.localdomain systemd[1]: A.service: Merged into running job, re-running: A.service/reload as 1288
    Oct 24 22:27:52 localhost.localdomain systemd[1]: A.service: Enqueued job A.service/reload as 1288
    Oct 24 22:27:52 localhost.localdomain systemd[1]: A.service: Unit cannot be reloaded because it is inactive.
    Oct 24 22:27:52 localhost.localdomain systemd[1]: A.service: Job 1288 A.service/reload finished, result=invalid
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Passing 0 fds to service
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: About to execute: /usr/bin/echo B
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Forked /usr/bin/echo as 970
    Oct 24 22:27:52 localhost.localdomain systemd[970]: B.service: Executing: /usr/bin/echo B
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Failed to send unit change signal for B.service: Connection reset by peer
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Changed dead -> start
    Oct 24 22:27:52 localhost.localdomain systemd[1]: Starting B...
    Oct 24 22:27:52 localhost.localdomain echo[970]: B
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Child 970 belongs to B.service.
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Main process exited, code=exited, status=0/SUCCESS
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Changed start -> exited
    Oct 24 22:27:52 localhost.localdomain systemd[1]: B.service: Job 1371 B.service/start finished, result=done
    Oct 24 22:27:52 localhost.localdomain systemd[1]: Started B.
    Oct 24 22:27:52 localhost.localdomain systemd[1]: C.target: Job 1287 C.target/start finished, result=done
    Oct 24 22:27:52 localhost.localdomain systemd[1]: Reached target C.
    Oct 24 22:27:52 localhost.localdomain systemd[1]: C.target: Failed to send unit change signal for C.target: Connection reset by peer
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Child 968 belongs to A.service.
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Main process exited, code=exited, status=0/SUCCESS
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Running next main command for state start.
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Passing 0 fds to service
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: About to execute: /usr/bin/echo A2
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Forked /usr/bin/echo as 972
    Oct 24 22:28:47 localhost.localdomain systemd[972]: A.service: Executing: /usr/bin/echo A2
    Oct 24 22:28:47 localhost.localdomain echo[972]: A2
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Child 972 belongs to A.service.
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Main process exited, code=exited, status=0/SUCCESS
    Oct 24 22:28:47 localhost.localdomain systemd[1]: A.service: Changed start -> exited

The issue occurs not only in reload command, i.e.:

  - reload
  - try-restart
  - reload-or-restart
  - reload-or-try-restart commands

The cause of this issue is that job_type_collapse() doesn't take care of the
activating state.

Fixes: #10464
(cherry picked from commit d1559793df555212271e490a4a72f55826caf5b4)
2019-11-19 11:07:30 +01:00
Jan Kundrát
cd86ae9373 journalctl: allow running vacuum on remote journals, too
Right now the `systemd-journal-remote` service does not constrain its
resource usage (I just run out of space on my 100GB partition, for
example). This patch does not change that, but it at least makes it
possible to run something like:

  journalctl --directory /var/log/journal/remote --rotate --vacuum-size=90G

fixes #2376

Co-authored-by: Mike Auty <ikelos@gentoo.org>
(cherry picked from commit c488660e6edb3c1375ab62514a8df035c3d712bf)
2019-11-19 11:07:30 +01:00
Jérémy Rosen
fc0451bc0a allow an empty DefaultInstance= in configuration files
It is currently possible to override the DefaultInstance via drop-ins but
not remove it completely. Allow to do that by specifying an empty
DefaultInstance=

(cherry picked from commit b5395600a0b0a4e01f3f50a860547060290aca34)
2019-11-19 11:07:30 +01:00
Jan Synacek
587266c24a man/systemd.net-naming-scheme: fix typo
(cherry picked from commit ce6304f78e57f2038f62cb923f48ad4f11e71720)
2019-11-19 11:07:30 +01:00
Justin Trudell
e0e63f0f9b nspawn: respect quiet on capabilities warning
(cherry picked from commit 0ccdaa79ca69a40e4ad8b3e63b1236734751452e)
2019-11-19 11:07:30 +01:00
Lennart Poettering
37e50c05b5 nspawn: mangle slice name
It's user-facing, parsed from the command line and we typically mangle
in these cases, let's do so here too. (In particular as the identical
switch for systemd-run already does it.)

(cherry picked from commit 43c3fb4680c8a2f8f417a71d7fbedde2db30f0c8)
2019-11-19 11:07:15 +01:00
Kevin Kuehler
4fefc49354 mkosi: Find hostname command on Arch Linux
exec-specifier.service: Executing: /usr/bin/sh -c 'test mkosi-7d5e81c7b81c42338d060a6b98edd44a = $(hostname)'
/usr/bin/sh: hostname: command not found
/usr/bin/sh: line 0: test: mkosi-7d5e81c7b81c42338d060a6b98edd44a: unary operator expected
Received SIGCHLD from PID 7389 (sh).
Child 7389 (sh) died (code=exited, status=2/INVALIDARGUMENT)

gettext provides the hostname binary, but puts it in
/usr/lib/gettext/hostname, which is not part of the default $PATH. Using
inetutils instead puts the binary in /usr/bin/hostname.

(cherry picked from commit b9dc511954b080d8b05a44f1758be6dbb4078852)
2019-11-19 10:39:00 +01:00
Kevin Kuehler
c430e8affb Fix mkosi on Arch Linux
/* test compression */
XZ compression finished (38280 -> 11756 bytes, 30.7%)
sh: diff: command not found
Assertion 'system(cmd) == 0' failed at src/journal/test-compress.c:198,
function test_compress_stream(). Aborting.

The journal compression test shells out to diff, so include diffutils as
a BuildPackage on Arch.

Remaining fixes in https://github.com/systemd/mkosi/pull/377

(cherry picked from commit 9e05564006ada86f6e2777506a5e2b45308a4e5c)
2019-11-19 10:37:50 +01:00
Jóhann B. Guðmundsson
1765b8d803 Update to Fedora31
(cherry picked from commit 294eeed1443c88b2cf54a1e02c66697cb65d7aec)
2019-11-19 10:37:41 +01:00
Jan Janssen
0b9a2a9a98 sd-boot: Silence compiler warning when building with -O2
(cherry picked from commit d9690d8fe9016783ef164c9a006e30987c359c6f)
2019-11-19 10:37:37 +01:00
Jan Janssen
24e02f8d49 sd-boot: Don't loudly complain if RNG protocol isn't available
Fixes #13503

(cherry picked from commit 391719682bf68134b01cf422eb92e3ec4686fa7b)
2019-11-19 10:37:33 +01:00
Jan Janssen
14e377ef35 sd-boot: Only disable optimization on debug builds
(cherry picked from commit 9ea4d81c12e8a3f7ee081f9eac7e77256f43b7b0)
2019-11-19 10:37:26 +01:00
Lennart Poettering
a39008ddec meson: correct man page deps
(cherry picked from commit 20bae8b94d34d75fe2572738e466abc37563bf88)
2019-11-19 10:37:07 +01:00
Lennart Poettering
4c1dcc06fa sd-event: don't invalidate source type on disconnect
This fixes fd closing if fd ownership is requested.

(cherry picked from commit f59825595182d70b9ead238d1e885d0db99cc201)
2019-11-19 10:36:57 +01:00
Lennart Poettering
fb89ee34ce analyze: fix minor memleak
(cherry picked from commit 81610e9609c966a33dcff15a4f3b173aa8f07e4b)
2019-11-19 10:36:13 +01:00
Lennart Poettering
a449299bc0 analyze: sort list of unknown syscalls kernel implements
(cherry picked from commit ea334dc328c9bbba68098d2f779293528a123c23)
2019-11-19 10:36:12 +01:00
Lennart Poettering
51ea58a04b seccomp: add new Linux 5.3 syscalls to syscall filter lists
Many syscalls added and all fit nicely into existing groups, hence lets
add them there.

(cherry picked from commit 9e486265716963439fb0fd7f2a97abf109f24f75)
2019-11-19 10:36:12 +01:00
Iwan Timmer
819695c8b0 resolved: check for IP in certificate when using DoT with GnuTLS
Validate the IP address in the certificate for DNS-over-TLS in strict mode when GnuTLS is used. As this is not yet the case in contrast to the documentation.

(cherry picked from commit 7f2f4faced3fda47e6b76ab73cde747cc20cf8b8)
2019-11-19 10:34:50 +01:00
Iwan Timmer
37f817e210 resolved: require at least version 3.6.0 of GnuTLS for DNS-over-TLS
Increase the required version to ensure TLS 1.3 is always supported when using GnuTLS for DNS-over-TLS and allow further changes to use recent API additions.

(cherry picked from commit 38e053c58fa139e0f546f327b5d8ce3db7cf1647)
2019-11-19 10:34:46 +01:00
Evgeny Vereshchagin
32056809ba coverity: replace python with jq
Judging by https://travis-ci.org/systemd/systemd/jobs/604425785
(where the script failed with "tools/coverity.sh: line 45: python: command not found")
python-unversioned-command is no longer installed by default with python2.
Given that it's not the first time python has vanished and it's not clear
what exactly should be installed to make sure it's there, let's just use jq instead.

(cherry picked from commit 738606e45251b73950a52e62e7186fe4516a018a)
2019-11-19 10:32:49 +01:00
David Pedersen
d2b4d7ee17 network-generator: Add missing help for --root
(cherry picked from commit e6d6645517759f5eb419f6754bd4c12dfa151b21)
2019-11-19 10:31:50 +01:00
Zbigniew Jędrzejewski-Szmek
f1b18c2062 modules-load: do not fail service if modules are not present
It is pretty common for the service to fail in the initramfs (for example
because certain modules have not been copied over or haven't been built yet in
case of dkms modules). This seems to be more trouble than it is worth. Let's
change the service to simply log any missing modules at error level, but not
fail the whole service.

https://bugzilla.redhat.com/show_bug.cgi?id=1254340
(cherry picked from commit fec837e96e902c041adae552aa3101b8a8132869)
2019-11-19 10:31:34 +01:00
Zbigniew Jędrzejewski-Szmek
606de66267 pid1: order .automount units after local-fs-pre.target
From the bug:
> According to the documentation of systemd.automount if the automoint point is
> automagically created if it doesn't exist yet. This ofcourse means the
> filesystem underneath has to be writable, which for / means not only does
> -.mount need to be started but also systemd-remount-fs.service has to be run,
> which isn't guaranteed by the default automount dependencies.
>
> For .mount units there is an automatic default After= dependency on
> local-fs-pre.target, would probably make sense to do the same for automount
> units to avoid it failing on the corner-case where it has to create directory.

Fixes #13306.

(cherry picked from commit 9432f882a53e7152a75007fd7f001f9a74f2a0d7)
2019-11-19 10:30:45 +01:00
Franck Bui
1366b81f2b shared/install: failing with -ELOOP can be due to the use of an alias in install_error()
-ELOOP can happen also when enabling an alias name (which is admittedly useless
since the unit it belongs to was already enabled) so let's mention this
possibility when reporting the corresponding error.

(cherry picked from commit 22683674716fd0e5b016ce5a7d8fd90df5f9f9e7)
2019-11-19 10:30:21 +01:00
Franck Bui
84d5cd699e shared/install: fix error codes returned by install_context_apply()
(cherry picked from commit 56a4ce2417ff74f82a48e3a5c6e36edad8d4bc6c)
2019-11-19 10:30:12 +01:00
Franck Bui
417779c58a man: alias names can't be used with enable command
(cherry picked from commit faf205de3ba9a11b0ba17682123d7f3fedc7da24)
2019-11-19 10:30:11 +01:00
Dan Streetman
00af6c447f resolved: set stream type during DnsStream creation
The DnsStreamType was added to track different types of DNS TCP streams,
instead of refcounting all of them together.  However, the stream type was
not actually set into the stream->type field, so while the reference count
was correctly incremented per-stream-type, the reference count was always
decremented in the cleanup function for stream type 0, leading to
underflow for the type 0 stream (unsigned) refcount, and preventing new
type 0 streams from being created.

Since type 0 is DNS_STREAM_LOOKUP, which is used to communicate with
upstream nameservers, once the refcount underflows the stub resolver
no longer is able to successfully fall back to TCP upstream lookups
for any truncated UDP packets.

This was found because lookups of A records with a large number of
addresses, too much to fit into a single 512 byte DNS UDP reply,
were causing getaddrinfo() to fall back to TCP and trigger this bug,
which then caused the TCP fallback for later large record lookups
to fail with 'connection timed out; no servers could be reached'.

The stream type was introduced in commit:
652ba568c6624bf40d735645f029d83d21bdeaa6

(cherry picked from commit 1c089741d3b56ab096c5c401089f68b293b5fa38)
2019-11-19 10:28:31 +01:00
Zbigniew Jędrzejewski-Szmek
66dd9d7d25 sd-device: allow sd_device_get_devtype to be called with NULL arg and do not assert
We shouldn't call assert() on user-specified arguments in public functions.
While at it, let's return 1 if the type exists, and 0 otherwise.

(cherry picked from commit 730b76bd2cd5f0866baa738ae283e3b62544a28f)
2019-11-19 10:27:39 +01:00
Zbigniew Jędrzejewski-Szmek
048f9da1a4 Remove unused plymouth_running() function
(cherry picked from commit 8a2c82ac882f4adfb0f7bdc039c84e880ddd689a)
2019-11-19 10:27:27 +01:00
Chen Qi
34fa67bbe7 machine-id-setup: avoid unexpected aborting
Code should not be reached 'Unhandled option' at src/machine-id-setup/machine-id-setup-main.c:97, function parse_argv(). Aborting.
Aborted

This behaviour is not good and will confuse user.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
(cherry picked from commit 4a434023d2380ef04492ae3ca41781738ba4d133)
2019-11-19 10:27:18 +01:00
Zbigniew Jędrzejewski-Szmek
24c99fa2ef test-socket-util: avoid writing past the defined buffer
.sun_path has 108 bytes, and we'd write a string of 108 bytes + NUL.
I added this test, but I don't know what it was supposed to test. Let's
just remove.

Fixes #13713. CID#1405854.

(cherry picked from commit 58ce85f6a17b6db03265e6a974120b18d1c0855a)
2019-11-19 10:26:21 +01:00
Yu Watanabe
ce82233f99 test: drop duplicated 's'
This fixes the following log message
```
Container TEST-07-ISSUE-1981 terminated by signal KILL.
E: test timed out after 30s s
```

(cherry picked from commit 235ecb6d75f00384b3f42f449c769340e13fbd0b)
2019-11-19 10:25:54 +01:00
Zbigniew Jędrzejewski-Szmek
75a0e72091 nspawn: fix handling of --console=help
We shouldn't continue to run the container after printing help.

(cherry picked from commit dce66ffedbd4e72c2a1a35a55dc26c0e1029e8e3)
2019-11-19 10:25:18 +01:00
Zbigniew Jędrzejewski-Szmek
f41a282875 Revert "sysusers: properly mark generated accounts as locked"
This reverts the gist of commit 636e72bce63e7e99b76357f7d524d16f61558775.
The comment and the tiny cleanup are left alone.

We shouldn't lock the accounts because people actually need to use them, and
if they are locked, various tools will refuse.
See https://github.com/systemd/systemd/pull/13277#issuecomment-529964578
and follow-up comments.

(cherry picked from commit 12c829376a95ee0a734b8dbd347042062516f0a9)
2019-11-19 10:24:32 +01:00
Marko Myllynen
fc2dceac61 Remove unprintable non-ASCII char from special glyph ASCII fallback table
(cherry picked from commit de52000695e7992222e182d1ada3444aed78e86b)
2019-11-19 10:24:10 +01:00
Zbigniew Jędrzejewski-Szmek
dedf5b511e logind: fix emission of PropertiesChanged for users
The same as parent commit, but users. This is the third and last
foo_object_find() function in logind, so I think that this particular
family of bugs is finally squashed.

(cherry picked from commit 8163b9f90079af298031dcbffee057fc344470a3)
2019-11-19 10:13:39 +01:00
Zbigniew Jędrzejewski-Szmek
6e3cfe2e58 logind: fix emission of PropertiesChanged on seats
The story is the same as in 471cffcfb0e005b7c4044b3b52cc4f25d217efac:
device_attach() → seat_send_changed() → sd_bus_emit_properties_changed_strv()
→ emit_properties_changed_on_interface() → node_vtable_get_userdata()
→ seat_object_find(), which returns 0 because message == NULL.
But when we are emitting a signal, message is always NULL. Removing the
overeager check and assert in the called function allow the signal to be
emitted.

Fixes #13769.

(cherry picked from commit 8cc64c2a3640121745fdfaccc6eae896ac25a911)
2019-11-19 10:13:30 +01:00
Peter Wu
a9152084d7 resolved: fix connection failures with TLS 1.3 and GnuTLS
Prefer TLS 1.3 before TLS 1.2 for DNS-over-TLS support, otherwise
servers compliant with RFC 8446 might end up agreeing TLS 1.2 plus a
downgrade signal which is not expected by GnuTLS clients. This manifests
in the following error:

    Failed to invoke gnutls_handshake: An illegal parameter has been received.

Fixes: #13528
Fixes: v242-962-g9c0624dcdb ("resolved: support TLS 1.3 when using GnuTLS for DNS-over-TLS")
(cherry picked from commit 68805580209cfaa50b2400d1a2e6c66500001395)
2019-11-19 10:13:12 +01:00
Zbigniew Jędrzejewski-Szmek
961879ed9d udev: tag any display devices as master-of-seat when nomodeset is used
Fixes #13773. See also https://bugzilla.redhat.com/show_bug.cgi?id=1728240,
https://github.com/sddm/sddm/issues/1204.

When nomodeset is used on the kernel command line, there is no graphics
device that the kernel knows, so we don't tag anything as master-of-seat,
and seat0 has CanGraphical=no.

$ loginctl seat-status seat0 ; loginctl show-seat seat0
seat0
         Devices:
                  ├─/sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input0
                  │ input:input0 "Power Button"
                  ├─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb1
                  │ usb:usb1
                  │ └─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb1/1-1/1-1:1.0/0003:0627:0001.0001/input/input4
                  │   input:input4 "QEMU QEMU USB Tablet"
                  ├─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb2
                  │ usb:usb2
                  ├─/sys/devices/pci0000:00/0000:00:1b.0/sound/card0
                  │ sound:card0 "Intel"
                  ├─/sys/devices/platform/i8042/serio0/input/input1
                  │ input:input1 "AT Translated Set 2 keyboard"
                  │ ├─/sys/devices/platform/i8042/serio0/input/input1/input1::capslock
                  │ │ leds:input1::capslock
                  │ ├─/sys/devices/platform/i8042/serio0/input/input1/input1::numlock
                  │ │ leds:input1::numlock
                  │ └─/sys/devices/platform/i8042/serio0/input/input1/input1::scrolllock
                  │   leds:input1::scrolllock
                  └─/sys/devices/platform/i8042/serio1/input/input3
                    input:input3 "ImExPS/2 Generic Explorer Mouse"
Id=seat0
CanMultiSession=yes
CanTTY=yes
CanGraphical=no
Sessions=
IdleHint=yes
IdleSinceHint=0
IdleSinceHintMonotonic=0

Let's tag the PCI device with "master-of-seat", so we get CanGraphical=yes, and "seat",
so it is show as part of the seat:

[fedora@f31-bios ~]$ loginctl seat-status seat0 ; loginctl show-seat seat0
seat0
         Devices:
                  ├─/sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input0
                  │ input:input0 "Power Button"
                  ├─/sys/devices/pci0000:00/0000:00:01.0
                  │ [MASTER] pci:0000:00:01.0
                  ├─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb1
                  │ usb:usb1
                  │ └─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb1/1-1/1-1:1.0/0003:0627:0001.0001/input/input4
                  │   input:input4 "QEMU QEMU USB Tablet"
                  ├─/sys/devices/pci0000:00/0000:00:02.1/0000:02:00.0/usb2
                  │ usb:usb2
                  ├─/sys/devices/pci0000:00/0000:00:1b.0/sound/card0
                  │ sound:card0 "Intel"
                  ├─/sys/devices/platform/i8042/serio0/input/input1
                  │ input:input1 "AT Translated Set 2 keyboard"
                  │ ├─/sys/devices/platform/i8042/serio0/input/input1/input1::capslock
                  │ │ leds:input1::capslock
                  │ ├─/sys/devices/platform/i8042/serio0/input/input1/input1::numlock
                  │ │ leds:input1::numlock
                  │ └─/sys/devices/platform/i8042/serio0/input/input1/input1::scrolllock
                  │   leds:input1::scrolllock
                  └─/sys/devices/platform/i8042/serio1/input/input3
                    input:input3 "ImExPS/2 Generic Explorer Mouse"
Id=seat0
CanMultiSession=yes
CanTTY=yes
CanGraphical=yes
Sessions=
IdleHint=yes
IdleSinceHint=0
IdleSinceHintMonotonic=0

(cherry picked from commit 0325f71926b0bfad24d998335ce533b0554db7f0)
2019-11-19 10:12:56 +01:00
Benjamin Bouvier
8aa7bafa12 systemd-fsck: fix systemd-fsck/fsck pipe bad closure
Currently, when console is disabled but progress is tracked, pipe opened
for communication between systemd-fsck and fsck may be closed
inadvertently (when opening of /dev/console return in error). That lead
to finish fsck prematurely (because it receives a SIGPIPE) and so fsck
may not check correctly filesystems and do not have time to fix memory
corruptions.

This commit changes the opening of /dev/console to be done previously to
pipe creation and so fix the bug described just above.

(cherry picked from commit e4fc74554773969ab208427c8489bd21af4195db)
2019-11-19 10:12:38 +01:00
Jonas Jelten
19590e289a ceph is a network filesystem
(cherry picked from commit c4742de6d801b125abf3c4d1c710280f51d7c701)
2019-11-19 10:12:21 +01:00
Luca Boccassi
339606ad9e portabled: allow to detach an image with a unit in linked-runtime state
This is necessary when a directory was attached with
--copy=symlink, otherwise detach will always fail.

Fixed #13725

(cherry picked from commit c3d809ef72db616391a1a2b738eae137f9024e3f)
2019-11-19 10:11:05 +01:00
Yu Watanabe
bd9692734a network: ndisc: do not drop all prefixes when a prefix matches a blacklist
Fixes #13767.

(cherry picked from commit 55d3fdcf5e9f6ceb9fc1a5f93120305f20abf690)
2019-11-19 10:09:49 +01:00
Yu Watanabe
5e6d4f8b79 systemctl: fix memleak caused by wrong cleanup func
(cherry picked from commit 13f697b7b1f3837d144ba6f60188bc7dc4d1fbaa)
2019-11-19 10:08:18 +01:00
Yu Watanabe
47d0e23d26 udev: fix memleak caused by wrong cleanup function
Fixes #13764.

(cherry picked from commit f4f6f2c7400b1a525d7c0c57b12f76f9dfdc4f0d)
2019-11-19 10:05:08 +01:00
Zbigniew Jędrzejewski-Szmek
a6fb0542c5 parse_hwdb: fix compatibility with pyparsing 2.4.*
pyparsing 2.3.1/2.4.0 had some changes to grouping of And matches, and as a
result we'd report 0 properties and 0 matches, and not really do any checks.

With this change we get identical behaviour for pyparsing 2.3.1, 2.4.0, 2.4.2:

$ hwdb/parse_hwdb.py
hwdb/60-evdev.hwdb: 72 match groups, 94 matches, 262 properties
hwdb/60-input-id.hwdb: 3 match groups, 3 matches, 4 properties
hwdb/60-keyboard.hwdb: 173 match groups, 256 matches, 872 properties
Keycode KBD_LCD_MENU1 unknown
Keycode KBD_LCD_MENU4 unknown
Keycode KBD_LCD_MENU2 unknown
Keycode KBD_LCD_MENU3 unknown
hwdb/60-sensor.hwdb: 101 match groups, 120 matches, 105 properties
hwdb/70-joystick.hwdb: 2 match groups, 3 matches, 2 properties
hwdb/70-mouse.hwdb: 104 match groups, 119 matches, 123 properties
hwdb/70-pointingstick.hwdb: 8 match groups, 30 matches, 11 properties
hwdb/70-touchpad.hwdb: 6 match groups, 9 matches, 6 properties

(cherry picked from commit 2382a2e32b6076fa4603c958f84b46d5a5b13dfa)
2019-11-19 10:05:01 +01:00
Zbigniew Jędrzejewski-Szmek
cb1d892f17 parse_hwdb: process files in order
Also, make the pattern more general. There are some plans to add more files
there, let's make sure we don't miss them.

(cherry picked from commit b32ae3aa7b63bad3cd9d412701d66c5cd8499160)
2019-11-19 10:04:53 +01:00
Balint Reczey
ef677436aa test: Pass personality test even when i686 userland runs on x86_64 kernel
(cherry picked from commit bd89d03544d2b8ea53af7af0a97d4d121ef048c4)
v243.3
2019-10-10 14:56:01 +02:00
Zbigniew Jędrzejewski-Szmek
3f6398c450 docs: fix inadvertent change in uid range
a305eda35f (r35378755)
(cherry picked from commit 581004bd336567d936e94e616d35679da8ce32a0)
2019-10-10 14:54:54 +02:00
Mike Kazantsev
25bb377a73 cgroup: fix typo in BPF firewall support warning message
(cherry picked from commit fc103b3e342429637527d3042bf7bdf15c12624d)
2019-10-10 14:53:23 +02:00