Yu Watanabe [Fri, 1 Nov 2019 09:27:33 +0000 (18:27 +0900)]
tree-wide: drop stdio.h when stdio-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:27:01 +0000 (18:27 +0900)]
tree-wide: drop signal.h when signal-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:26:26 +0000 (18:26 +0900)]
tree-wide: drop mman.h when missing_mman.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:24:45 +0000 (18:24 +0900)]
tree-wide: drop magic.h when missing_magic.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:23:26 +0000 (18:23 +0900)]
tree-wide: drop stat.h or statfs.h when stat-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:22:48 +0000 (18:22 +0900)]
tree-wide: drop socket.h when socket-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:21:33 +0000 (18:21 +0900)]
tree-wide: drop mntent.h when fstab-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:20:59 +0000 (18:20 +0900)]
tree-wide: drop libkmod.h when module-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:20:31 +0000 (18:20 +0900)]
tree-wide: drop blkid.h when blkid-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:19:54 +0000 (18:19 +0900)]
tree-wide: drop acl.h when acl-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:18:31 +0000 (18:18 +0900)]
tree-wide: drop pwd.h and grp.h when user-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:17:53 +0000 (18:17 +0900)]
tree-wide: drop time.h when time-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:17:16 +0000 (18:17 +0900)]
tree-wide: drop capability.h when capability-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 09:16:18 +0000 (18:16 +0900)]
tree-wide: drop sched.h when missing_sched.h is included
Yu Watanabe [Fri, 1 Nov 2019 08:57:13 +0000 (17:57 +0900)]
tree-wide: drop gcrypt.h when gcrypt-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 08:56:33 +0000 (17:56 +0900)]
tree-wide: drop locale.h when locale-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 08:56:05 +0000 (17:56 +0900)]
tree-wide: drop glob.h when glob-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 08:55:16 +0000 (17:55 +0900)]
tree-wide: drop dirent.h when dirent-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 08:46:59 +0000 (17:46 +0900)]
tree-wide: drop alloca.h when alloc-util.h is included
Yu Watanabe [Fri, 1 Nov 2019 08:44:54 +0000 (17:44 +0900)]
tree-wide: drop string.h when string-util.h or friends are included
Yu Watanabe [Sun, 3 Nov 2019 13:54:32 +0000 (22:54 +0900)]
Merge pull request #13899 from poettering/in-gid-tweak
user-util: tweak to in_gid()
Yu Watanabe [Sun, 3 Nov 2019 13:46:42 +0000 (22:46 +0900)]
Merge pull request #13909 from poettering/env-copy-pid
Fixes for the "saved_env" copy logic
Justin Trudell [Fri, 1 Nov 2019 19:00:16 +0000 (12:00 -0700)]
nspawn: respect quiet on capabilities warning
Lennart Poettering [Fri, 1 Nov 2019 10:43:34 +0000 (11:43 +0100)]
fs-util: let's avoid unnecessary strerror()
strerror() is not thread safe. Let's avoid it where it is easy hence.
(Ideally we'd not use it at all anymore, but that's sometimes a bit
nasty, not in this case though, where it is very easy to avoid)
Follow-up for:
27c3112dcbd1b5f171c36c32550d9c6331375b0b
Yu Watanabe [Sun, 3 Nov 2019 12:42:15 +0000 (21:42 +0900)]
Merge pull request #13916 from ddstreet/test-network
test-network: minor changes to work better on Debian/Ubuntu autopkgtest
Lennart Poettering [Fri, 1 Nov 2019 10:21:05 +0000 (11:21 +0100)]
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.)
Lennart Poettering [Fri, 1 Nov 2019 22:44:36 +0000 (23:44 +0100)]
Merge pull request #13905 from poettering/cpuset-fixes
fixes to the cpuset cgroup logic
Dan Streetman [Thu, 31 Oct 2019 16:19:23 +0000 (12:19 -0400)]
test-network: Remove/replace non-capturing group regex
The systemd-networkd-tests.py has some regex that uses non-capturing
groups, but there is no need to use that with assertRegex; the
groups aren't referenced so it doesn't matter if it's capturing or
non-capturing. However, there are a few places where optional groups
should have been used instead, so this changes that.
Specifically, groups like this:
(?:whatever |)
should actually be:
(whatever )?
Additionally, this is specifically needed for these tests to run on
Debian systems, because this assertRegex:
'Link File: (?:/usr)/lib/systemd/network/99-default.link'
needs to be:
'Link File: (/usr)?/lib/systemd/network/99-default.link'
Dan Streetman [Thu, 31 Oct 2019 10:44:20 +0000 (06:44 -0400)]
test: check /usr/lib and /lib for systemd binaries
Fedora uses /usr/lib while Debian uses /lib; find the right location
Dan Streetman [Thu, 31 Oct 2019 10:07:33 +0000 (06:07 -0400)]
test/test-network/systemd-networkd-tests.py: suppress stderr for functionality checks
Kevin Kuehler [Thu, 31 Oct 2019 22:41:32 +0000 (15:41 -0700)]
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.
Lennart Poettering [Fri, 1 Nov 2019 12:07:51 +0000 (13:07 +0100)]
update TODO
Lennart Poettering [Fri, 1 Nov 2019 10:31:20 +0000 (11:31 +0100)]
static-destruct: add missing closing '(' in comment
Lennart Poettering [Fri, 1 Nov 2019 10:26:05 +0000 (11:26 +0100)]
pid1: rework environment block copy logic
This reworks the logic introduced in
a5cede8c24fddda9b73f142e09b18b49adde1b9c (#13693).
First of all, let's move this out of util.c, since only PID 1 really
needs this, and there's no real need to have it in util.c.
Then, fix freeing of the variable. It previously relied on
STATIC_DESTRUCTOR_REGISTER() which however relies on static_destruct()
to be called explicitly. Currently only the main-func.h macros do that,
and PID 1 does not. (It might be worth investigating whether to do that,
but it's not trivial.) Hence the freeing wasn't applied.
Finally, an OOM check was missing, add it in.
Lennart Poettering [Fri, 1 Nov 2019 09:22:03 +0000 (10:22 +0100)]
cgroup: add missing OOM check, and shorten code a bit
cpu_set_to_range_string() can fail due to OOM. Handle that.
unit_write_settingf() exists, use it instead of formatting a string
beforehand.
cpu_set_add_all() can fail due to OOM. Let's avoid it if we don't have
to use it, just copy over the cpuset directly.
Lennart Poettering [Fri, 1 Nov 2019 09:21:53 +0000 (10:21 +0100)]
cpuset: fix indentation and log about OOM we otherwise ignore
Lennart Poettering [Fri, 1 Nov 2019 09:21:35 +0000 (10:21 +0100)]
cgroup: add some basic OOM safety where it was missing
Yu Watanabe [Fri, 1 Nov 2019 02:46:00 +0000 (11:46 +0900)]
NEWS: mention NetworkEmulatorDuplicateRate= setting
Yu Watanabe [Fri, 1 Nov 2019 02:44:10 +0000 (11:44 +0900)]
Merge pull request #13888 from ssahani/qdisc
tc qdisc: netem add support to duplicate packets.
Susant Sahani [Thu, 31 Oct 2019 20:55:48 +0000 (21:55 +0100)]
network: DHCP server remove duplicate free
Susant Sahani [Thu, 31 Oct 2019 13:25:16 +0000 (14:25 +0100)]
Fix CID 1406578: Resource leaks (RESOURCE_LEAK)
** CID 1406578: Resource leaks (RESOURCE_LEAK)
/src/libsystemd-network/sd-dhcp-server.c: 155 in sd_dhcp_raw_option_new()
Lennart Poettering [Thu, 31 Oct 2019 19:28:49 +0000 (20:28 +0100)]
test: add really basic in_gid() test
Lennart Poettering [Thu, 31 Oct 2019 19:27:34 +0000 (20:27 +0100)]
user-util: tweak to in_gid()
Let's make this robust towards parallel updates to group lists. This is
not going to happen IRL, but it makes me sleep better at night: let's
iterate a couple of times in case the list is updated while we are at
it.
Follow-up for:
f5e0b942af1e86993c21f4e5c84342bb10403dac
Anita Zhang [Thu, 31 Oct 2019 18:39:08 +0000 (11:39 -0700)]
Merge pull request #13895 from jsynacek/master
sd-dhcp: fix resource leak
Anita Zhang [Thu, 31 Oct 2019 18:35:58 +0000 (11:35 -0700)]
Merge pull request #13891 from yuwata/basic-drop-missing
tree-wide: drop missing.h
Anita Zhang [Thu, 31 Oct 2019 18:22:37 +0000 (11:22 -0700)]
Merge pull request #13892 from keur/mkosi_arch
Fix mkosi on Arch Linux
Jóhann B. Guðmundsson [Thu, 31 Oct 2019 14:51:41 +0000 (14:51 +0000)]
Update to Fedora31
Jan Synacek [Thu, 31 Oct 2019 13:37:43 +0000 (14:37 +0100)]
sd-dhcp: fix resource leak
CID#1406578
Susant Sahani [Wed, 30 Oct 2019 18:13:33 +0000 (19:13 +0100)]
tc: qdisc remove some duplicate code
Susant Sahani [Wed, 30 Oct 2019 17:58:02 +0000 (18:58 +0100)]
qdisc: netem add support to duplicate packets.
using this option the chosen percent of packets is duplicated before
queuing them
Kevin Kuehler [Thu, 31 Oct 2019 09:32:23 +0000 (02:32 -0700)]
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
Yu Watanabe [Thu, 31 Oct 2019 02:07:23 +0000 (11:07 +0900)]
tree-wide: drop missing.h
Zbigniew Jędrzejewski-Szmek [Thu, 31 Oct 2019 08:21:13 +0000 (09:21 +0100)]
Merge pull request #13510 from medhefgo/boot
sd-boot: Be silent on regular boots
Yu Watanabe [Thu, 31 Oct 2019 01:37:42 +0000 (10:37 +0900)]
test: move {test,fuzz}-fido-id-desc.c into src/udev/fido_id
Lennart Poettering [Wed, 30 Oct 2019 17:55:45 +0000 (18:55 +0100)]
meson: correct man page deps
Susant Sahani [Fri, 20 Sep 2019 02:22:17 +0000 (04:22 +0200)]
networkd: dhcp server Support Vendor specific 43
Implementes https://tools.ietf.org/html/rfc2132
```
[DHCPServer]
SendRawOption=26:uint32:1400
SendRawOption=23:uint8:10
```
Frame 448: 350 bytes on wire (2800 bits), 350 bytes captured (2800 bits) on interface 0
Linux cooked capture
Internet Protocol Version 4, Src: 192.168.5.1, Dst: 192.168.5.11
User Datagram Protocol, Src Port: 67, Dst Port: 68
Dynamic Host Configuration Protocol (ACK)
Message type: Boot Reply (2)
Hardware type: Ethernet (0x01)
Hardware address length: 6
Hops: 0
Transaction ID: 0x71f8de9d
Seconds elapsed: 0
Bootp flags: 0x0000 (Unicast)
Client IP address: 0.0.0.0
Your (client) IP address: 192.168.5.11
Next server IP address: 0.0.0.0
Relay agent IP address: 0.0.0.0
Client MAC address: 1e:04:f8:b8:2f:d4 (1e:04:f8:b8:2f:d4)
Client hardware address padding:
00000000000000000000
Server host name not given
Boot file name not given
Magic cookie: DHCP
Option: (53) DHCP Message Type (ACK)
Length: 1
DHCP: ACK (5)
Option: (51) IP Address Lease Time
Length: 4
IP Address Lease Time: (3600s) 1 hour
Option: (1) Subnet Mask (255.255.255.0)
Length: 4
Subnet Mask: 255.255.255.0
Option: (3) Router
Length: 4
Router: 192.168.5.1
Option: (6) Domain Name Server
Length: 4
Domain Name Server: 192.168.5.1
Option: (42) Network Time Protocol Servers
Length: 4
Network Time Protocol Server: 192.168.5.1
Option: (101) TCode
Length: 13
TZ TCode: Europe/Berlin
Option: (43) Vendor-Specific Information
Length: 9
Value:
1701311a0431343030
Option: (54) DHCP Server Identifier (192.168.5.1)
Length: 4
DHCP Server Identifier: 192.168.5.1
Option: (255) End
Option End: 255
```
Christian Rebischke [Wed, 30 Oct 2019 22:15:32 +0000 (23:15 +0100)]
add other worthy news
I think we can mention that systemd-resolved is able to validate IP
address certificates and prefer TLS 1.3 before TLS 1.2 now.
Also the `machinectl reboot` command actually works now.
Signed-off-by: Christian Rebischke <chris@nullday.de>
Anita Zhang [Wed, 30 Oct 2019 22:58:36 +0000 (15:58 -0700)]
Merge pull request #13884 from poettering/event-fd-close-fix
sd-event: don't invalidate source type on disconnect
Christian Rebischke [Wed, 30 Oct 2019 22:04:36 +0000 (23:04 +0100)]
add systemd logo to README.md
The logo in the readme is hosted by github as the systemd group avatar.
Signed-off-by: Christian Rebischke <chris@nullday.de>
Zbigniew Jędrzejewski-Szmek [Tue, 29 Oct 2019 21:14:39 +0000 (22:14 +0100)]
calendarspec: fix calculation of timespec iterations that fall onto a DST change
If we tested a candidate time that would fall onto the DST change, and we
realized that it is now a valid time ('cause the given "hour" is missing),
we would jump to to beginning of the next bigger time period, i.e. the next
day.
mktime_or_timegm() already tells us what the next valid time is, so let's reuse
this, and continue the calculations at this point. This should allow us to
correctly jump over DST changes, but also leap seconds and similar. It should
be OK even multiple days were removed from calendar, similarly to the
Gregorian-Julian transition. By reusing the information from normalization, we
don't have to make assumptions what the next valid time is.
Fixes #13745.
$ TZ=Australia/Sydney faketime '2019-10-06 01:50' build/systemd-analyze calendar 0/1:0/1 --iterations 20 | grep Iter
Iter. #2: Sun 2019-10-06 01:52:00 AEST
Iter. #3: Sun 2019-10-06 01:53:00 AEST
Iter. #4: Sun 2019-10-06 01:54:00 AEST
Iter. #5: Sun 2019-10-06 01:55:00 AEST
Iter. #6: Sun 2019-10-06 01:56:00 AEST
Iter. #7: Sun 2019-10-06 01:57:00 AEST
Iter. #8: Sun 2019-10-06 01:58:00 AEST
Iter. #9: Sun 2019-10-06 01:59:00 AEST
Iter. #10: Sun 2019-10-06 03:00:00 AEDT
Iter. #11: Sun 2019-10-06 03:01:00 AEDT
Iter. #12: Sun 2019-10-06 03:02:00 AEDT
Iter. #13: Sun 2019-10-06 03:03:00 AEDT
Iter. #14: Sun 2019-10-06 03:04:00 AEDT
Iter. #15: Sun 2019-10-06 03:05:00 AEDT
Iter. #16: Sun 2019-10-06 03:06:00 AEDT
Iter. #17: Sun 2019-10-06 03:07:00 AEDT
Iter. #18: Sun 2019-10-06 03:08:00 AEDT
Iter. #19: Sun 2019-10-06 03:09:00 AEDT
Iter. #20: Sun 2019-10-06 03:10:00 AEDT
$ TZ=Australia/Sydney faketime 2019-10-06 build/systemd-analyze calendar 2/4:30 --iterations=3
Original form: 2/4:30
Normalized form: *-*-* 02/4:30:00
Next elapse: Sun 2019-10-06 06:30:00 AEDT
(in UTC): Sat 2019-10-05 19:30:00 UTC
From now: 5h 29min left
Iter. #2: Sun 2019-10-06 10:30:00 AEDT
(in UTC): Sat 2019-10-05 23:30:00 UTC
From now: 9h left
Iter. #3: Sun 2019-10-06 14:30:00 AEDT
(in UTC): Sun 2019-10-06 03:30:00 UTC
From now: 13h left
Jan Janssen [Wed, 30 Oct 2019 16:44:59 +0000 (17:44 +0100)]
sd-boot: Silence compiler warning when building with -O2
Jan Janssen [Sun, 15 Sep 2019 14:12:03 +0000 (16:12 +0200)]
sd-boot: Don't loudly complain if RNG protocol isn't available
Fixes #13503
Lennart Poettering [Wed, 30 Oct 2019 15:37:42 +0000 (16:37 +0100)]
sd-event: don't invalidate source type on disconnect
This fixes fd closing if fd ownership is requested.
Jan Janssen [Sun, 15 Sep 2019 13:56:30 +0000 (15:56 +0200)]
sd-boot: Only disable optimization on debug builds
Zbigniew Jędrzejewski-Szmek [Wed, 30 Oct 2019 14:58:39 +0000 (15:58 +0100)]
NEWS: fix two typos
Lennart Poettering [Fri, 25 Oct 2019 14:05:11 +0000 (16:05 +0200)]
analyze: fix minor memleak
Lennart Poettering [Fri, 25 Oct 2019 14:05:35 +0000 (16:05 +0200)]
analyze: sort list of unknown syscalls kernel implements
Lennart Poettering [Wed, 30 Oct 2019 10:11:05 +0000 (11:11 +0100)]
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.
Yu Watanabe [Wed, 30 Oct 2019 08:02:15 +0000 (17:02 +0900)]
network: cleanup header inclusion
Zbigniew Jędrzejewski-Szmek [Wed, 30 Oct 2019 13:08:26 +0000 (14:08 +0100)]
Merge pull request #13870 from irtimmer/check_ip_gnutls
resolved: validate IP address in certificate for DNS-over-TLS (GnuTLS)
Zbigniew Jędrzejewski-Szmek [Wed, 30 Oct 2019 13:06:04 +0000 (14:06 +0100)]
Merge pull request #13874 from keszybz/network-sendoption-cleanups
Network SendOption cleanups
Yu Watanabe [Wed, 30 Oct 2019 12:29:22 +0000 (21:29 +0900)]
NEWS: fix option name
Yu Watanabe [Wed, 30 Oct 2019 12:24:38 +0000 (21:24 +0900)]
Merge pull request #13879 from keszybz/news-v244
NEWS for v244
Zbigniew Jędrzejewski-Szmek [Wed, 30 Oct 2019 10:21:41 +0000 (11:21 +0100)]
network: install wifi-adhoc.network by default, make wifi-{ap,station} examples
I think 80-wifi-adhoc.network is safe enough, since it just enables
the link-local addressing. But the other two enable DHCP in client
or server modes, and we should not do this by default.
Zbigniew Jędrzejewski-Szmek [Wed, 30 Oct 2019 10:16:38 +0000 (11:16 +0100)]
NEWS: start preparations for v244
Lennart Poettering [Wed, 30 Oct 2019 09:53:28 +0000 (10:53 +0100)]
Merge pull request #13866 from keszybz/nspawn-restarts
Make 'machinectl reboot' functional
Evgeny Vereshchagin [Tue, 29 Oct 2019 19:07:15 +0000 (19:07 +0000)]
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.
Zbigniew Jędrzejewski-Szmek [Wed, 30 Oct 2019 08:13:38 +0000 (09:13 +0100)]
network: amend SendOption= to take a c-escaped string
No need to punish users by forcing them to do base64 encodings.
Zbigniew Jędrzejewski-Szmek [Wed, 30 Oct 2019 07:56:18 +0000 (08:56 +0100)]
network: rename SendOptions= to SendOption=
The name with plural made more sense where multiple options could be specified
in one line. After changes in the pull request, this option only accepts one
value, so from users' POV it should be singular.
(The field in the data structure remains plural, because it actually stores
multiple values.)
Yu Watanabe [Wed, 30 Oct 2019 05:35:51 +0000 (14:35 +0900)]
Merge pull request #13747 from ssahani/tc-qdisc
network: introduce Traffic Control
Yu Watanabe [Wed, 30 Oct 2019 00:40:00 +0000 (09:40 +0900)]
Merge pull request #13867 from keszybz/man-condition
Refactor description of conditons
Yu Watanabe [Tue, 29 Oct 2019 15:33:19 +0000 (00:33 +0900)]
test-network: add tests for qdisc
Yu Watanabe [Tue, 29 Oct 2019 15:19:34 +0000 (00:19 +0900)]
network: wait for QDiscs to be configured
Susant Sahani [Mon, 7 Oct 2019 14:19:00 +0000 (16:19 +0200)]
network: introduce TrafficControl
Add network delay to a interface
Iwan Timmer [Tue, 29 Oct 2019 19:32:18 +0000 (20:32 +0100)]
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.
Iwan Timmer [Tue, 29 Oct 2019 19:26:05 +0000 (20:26 +0100)]
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.
Anita Zhang [Tue, 29 Oct 2019 18:35:41 +0000 (11:35 -0700)]
Merge pull request #13676 from ClydeByrdIII/service-result-patch
Update service result table
Zbigniew Jędrzejewski-Szmek [Tue, 29 Oct 2019 13:54:36 +0000 (14:54 +0100)]
man: reword description of triggering conditions
Fixes #13758.
Zbigniew Jędrzejewski-Szmek [Tue, 29 Oct 2019 13:52:27 +0000 (14:52 +0100)]
man: split out description of Conditions and Assert to new section
We slowly added many many conditions over the years, and the text became
very hard to read, because all the terms were squished in one <termitem>.
This rearragnes the text into a new subsection, with minimal grammar changes
and removal of repetitions.
Michael Tretter [Fri, 18 Oct 2019 13:14:35 +0000 (15:14 +0200)]
boot-loader-spec: add devicetree-overlay key
Device tree overlays are a convenient way to patch device trees, e.g.,
add new devices to a device tree or enable/disable devices. This is
useful for non-discoverable but configurable hardware. Device tree
overlays are commonly used for displays on the Raspberry Pi or for
describing the content of FPGA bitstreams.
Add the devicetree-overlay key to boot loader specification entries to
allow boot loaders to apply overlays.
See #13537
Zbigniew Jędrzejewski-Szmek [Tue, 29 Oct 2019 10:16:45 +0000 (11:16 +0100)]
Merge pull request #13864 from fbuihuu/no-more-swap-autoactivation
No more swap autoactivation
Zbigniew Jędrzejewski-Szmek [Tue, 29 Oct 2019 09:46:21 +0000 (10:46 +0100)]
machined: only Unref units that we AddRef'd
b92d0b4c5adef37e9de8f6cc22a0e27b97fcf3ad added AddRef to the StartTransientUnit
call in machine_start_scope()/manager_start_scope() and a corresponding Unref
call in machine_stop_scope(). But when we are running systemd-nspawn@ with
--keep unit, the unit is not created by machined so the AddRef never happens.
Then when trying to stop the unit, we'd get:
systemd-machined[1101]: Sent message type=method_call sender=n/a destination=org.freedesktop.systemd1 path=/org/freedesktop/systemd1 interface=org.freedesktop.systemd1.Manager member=UnrefUnit cookie=37 reply_cookie=0 signature=s error-name=n/a error-message=n/a
systemd-machined[1101]: Got message type=error sender=:1.1 destination=:1.13 path=n/a interface=n/a member=n/a cookie=2443 reply_cookie=37 signature=s error-name=org.freedesktop.systemd1.NotReferenced error-message=Unit has not been referenced yet.
systemd-machined[1101]: Failed to drop reference to machine scope, ignoring: Unit has not been referenced yet.
Zbigniew Jędrzejewski-Szmek [Tue, 29 Oct 2019 09:31:19 +0000 (10:31 +0100)]
shared/logs-show: strip trailing carriage returns at EOL/EOF
When showing logs from a container, we would fail to show various lines:
Oct 29 09:50:51 krowka systemd-nspawn[61376]: Detected architecture x86-64.
Oct 29 09:50:51 krowka systemd-nspawn[61376]: [1B blob data]
Oct 29 09:50:51 krowka systemd-nspawn[61376]: Welcome to Fedora 32 (Rawhide)!
Oct 29 09:50:51 krowka systemd-nspawn[61376]: [1B blob data]
Those are only harmless \r characters that trail the line. We already replace
tabs and strip various ansi characters that we deem inconsequential, so let's
also strip trailing carriage returns. Non-trailing ones are different, because
they change what would be displayed.
Zbigniew Jędrzejewski-Szmek [Tue, 29 Oct 2019 08:47:57 +0000 (09:47 +0100)]
nspawn: when stopping the machine, just deregister the machine
We already shut the machine down ourselves (and pid1 will also do
cleanup for us after we exit if anything was left behind). No need for
systemd-machined to try to stop the unit too.
(This calls the new machined method. If we are running against an older
machined, we will not deregister the machine. If we are simply exiting,
machined should notice that the unit is gone on its own. If we are restarting,
we will fail to register the machine after restart and fail. But this case
was already broken, because machined would create a stop job, breaking the
restart. So not doing anything with old machined should not make anything
more broken than it already is.)
Fixes #13766.
Zbigniew Jędrzejewski-Szmek [Tue, 29 Oct 2019 08:43:07 +0000 (09:43 +0100)]
machined: add UnregisterMachine method
This is the opposite of RegisterMachine: machined knows that the machine is
"gone", but doesn't do anything on its own. We already had TerminateMachine,
but that would stop the unit, which isn't always wanted.
Zbigniew Jędrzejewski-Szmek [Tue, 29 Oct 2019 08:39:25 +0000 (09:39 +0100)]
pid1: log the reason why restart will or will not happen
I was trying to figure out why the restart was not happening, and it wasn't
at all obvious. Let's add a nice debug message.
David Pedersen [Mon, 28 Oct 2019 17:47:14 +0000 (18:47 +0100)]
network-generator: Add missing help for --root
Zbigniew Jędrzejewski-Szmek [Mon, 28 Oct 2019 20:39:55 +0000 (21:39 +0100)]
shared: small typo
Franck Bui [Mon, 28 Oct 2019 17:50:43 +0000 (18:50 +0100)]
core: drop 'wants' parameter from unit_add_node_dependency()
Since Wants dependency is no more automagically added to swap and mount units,
this parameter is no more used hence this patch drops it.
Franck Bui [Mon, 28 Oct 2019 17:41:59 +0000 (18:41 +0100)]
swap: do not make swap units wanted by its device unit anymore
It was done for mount units already (see commit
142b8142d7bb84f07). For the
same reasons and for consistency we should also stop activating automagically
swaps when their device is hot-plugged.