Package: systemd / 215-17

Metadata

Package Version Patches format
systemd 215-17 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
man add link to Open Group Base Specifications.patch | (download)

man/file-hierarchy.xml | 7 5 + 2 - 0 !
1 file changed, 5 insertions(+), 2 deletions(-)

 man: add link to open group base specifications

(cherry picked from commit 9c5dcb68b058b6bde056fc1ece768ba74a120091)

sd path add missing header.patch | (download)

src/libsystemd/sd-path/sd-path.c | 1 1 + 0 - 0 !
1 file changed, 1 insertion(+)

 sd-path: add missing header

(cherry picked from commit 0c7448867271180e8ac5795ebdff4bee0c0acd0c)

architecture remove cris from uname list.patch | (download)

src/shared/architecture.c | 1 0 + 1 - 0 !
1 file changed, 1 deletion(-)

 architecture: remove "cris" from uname list

the only correct name appears to be "crisv32"...

http://lists.freedesktop.org/archives/systemd-devel/2014-July/020899.html
(cherry picked from commit bc4bc52bc3de56405045b0437e145a7067fb085d)

networkd link improve link tracking logging.patch | (download)

src/network/networkd-link.c | 13 9 + 4 - 0 !
1 file changed, 9 insertions(+), 4 deletions(-)

 networkd: link - improve link tracking logging

(cherry picked from commit 393c0c5e64d0cb85ce14f25a06fa8958c9e119e7)

networkd properly track addresses when first added.patch | (download)

src/network/networkd-link.c | 54 30 + 24 - 0 !
1 file changed, 30 insertions(+), 24 deletions(-)

 networkd: properly track addresses when first added

When doing a NEWADDR, the reply we get back is the NEWADDR itself, rather
than just an empty ack (unlike how NEWLINK works). For this reason, the
process that did the NEWADDR does not get the broadcast message.

We were only listening for broadcast messages, and hence not tracking the
addresses we added ourselves. This went unnoticed as the kernel will usually
send NEWADDR messages from time to time anyway, so things would mostly work,
but in the worst case we would not notice that a routable address was available
and consider ourselves offline.

(cherry picked from commit 4958aee4977f325be19f0e1e4b424922c3cada5f)

man netdev mention tun and tap.patch | (download)

man/systemd.netdev.xml | 3 2 + 1 - 0 !
1 file changed, 2 insertions(+), 1 deletion(-)

 man: netdev - mention tun and tap

Reported by Moviuro <moviuro@gmail.com>

(cherry picked from commit 54f601debc07addbed803fb847cd5bd3e91e021e)

units conditionalize static device node logic on CAP.patch | (download)

units/kmod-static-nodes.service.in | 2 1 + 1 - 0 !
units/systemd-tmpfiles-setup-dev.service.in | 2 1 + 1 - 0 !
2 files changed, 2 insertions(+), 2 deletions(-)

 units: conditionalize static device node logic on cap_sys_modules
 instead of CAP_MKNOD

npsawn containers generally have CAP_MKNOD, since this is required
to make PrviateDevices= work. Thus, it's not useful anymore to
conditionalize the kmod static device node units.

Use CAP_SYS_MODULES instead which is not available for nspawn
containers. However, the static device node logic is only done for being
able to autoload modules with it, and if we can't do that there's no
point in doing it.

(cherry picked from commit e0c74691c41a204eba2fd5f39615049fc9ff1648)

units conditionalize configfs and debugfs with CAP_S.patch | (download)

units/sys-kernel-config.mount | 1 1 + 0 - 0 !
units/sys-kernel-debug.mount | 1 1 + 0 - 0 !
2 files changed, 2 insertions(+)

 units: conditionalize configfs and debugfs with cap_sys_rawio

We really don't want these in containers as they provide a too lowlevel
look on the system.

Conditionalize them with CAP_SYS_RAWIO since that's required to access
/proc/kcore, /dev/kmem and similar, which feel similar in style. Also,
npsawn containers lack that capability.

(cherry picked from commit fa229d09281d435153b4cfd138a2a62fa66d889b)

main change check whether etc is unpopulated to look.patch | (download)

src/core/main.c | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 main: change check whether /etc is unpopulated to look for
 /etc/machine-id

Previously, we checked whether /etc was completely empty. This makes it
networkd don t clear dhcpv6 lease timers if there s .patch | (download)

src/libsystemd-network/sd-dhcp6-client.c | 3 2 + 1 - 0 !
1 file changed, 2 insertions(+), 1 deletion(-)

 networkd: don't clear dhcpv6 lease timers if there's no previous
 lease

If client->lease is NULL, dhcp6_lease_clear_timers will cause a segmentation
fault.

(cherry picked from commit b1e1238fb3af77419eca704fb64f68a313954734)

networkd accept section DHCP in systemd.network file.patch | (download)

src/network/networkd-network.c | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 networkd: accept section dhcp in systemd.network files

(cherry picked from commit c38d2eb828f1a62ae9052c9db45ccc70f98fdb47)

machine don t return uninitialized variable.patch | (download)

src/machine/machine.c | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 machine: don't return uninitialized variable

Repotred by Ronny Chevalier

(cherry picked from commit f14aa1f1b2e4e99ee20393871b5f64f1378ed6c3)

sysusers fix uninitialized warning.patch | (download)

src/sysusers/sysusers.c | 2 2 + 0 - 0 !
1 file changed, 2 insertions(+)

 sysusers: fix uninitialized warning

(cherry picked from commit bce415edcae8e7af8327de8265d621f95fa5426f)

vconsole setup run setfont before loadkeys.patch | (download)

src/vconsole/vconsole-setup.c | 48 23 + 25 - 0 !
1 file changed, 23 insertions(+), 25 deletions(-)

 vconsole-setup: run setfont before loadkeys

https://bugs.freedesktop.org/show_bug.cgi?id=80685
(cherry picked from commit abee28c56d523e55751b0c007d0bf812cc285c00)

coredumpctl show a useful error on permission proble.patch | (download)

src/journal/coredumpctl.c | 5 3 + 2 - 0 !
1 file changed, 3 insertions(+), 2 deletions(-)

 coredumpctl: show a useful error on permission problems

(cherry picked from commit 31cda3d1759dee3e48c8ed4a949d99f041bdca1c)

networkd netdev add missing refs.patch | (download)

src/network/networkd-macvlan.c | 2 2 + 0 - 0 !
src/network/networkd-tunnel.c | 2 2 + 0 - 0 !
src/network/networkd-vlan.c | 2 2 + 0 - 0 !
src/network/networkd-vxlan.c | 2 2 + 0 - 0 !
4 files changed, 8 insertions(+)

 networkd: netdev - add missing refs

Without this, the underlying device would get freed (and hence
fail).

(cherry picked from commit e04468dec04a968c523ee09da7d2163a1d1a5a15)

vconsole setup fix inverted error messages.patch | (download)

src/vconsole/vconsole-setup.c | 4 2 + 2 - 0 !
1 file changed, 2 insertions(+), 2 deletions(-)

 vconsole-setup: fix inverted error messages

Introduced in abee28c56d.

Pointed-out-by: Werner Fink <werner@suse.de>
(cherry picked from commit 3dde3f819732aaa66ab8e881305488adaea17641)

udev link_config ignore errors due to missing MAC ad.patch | (download)

src/udev/net/link-config.c | 8 6 + 2 - 0 !
1 file changed, 6 insertions(+), 2 deletions(-)

 udev: link_config - ignore errors due to missing mac address

Otherwis, we get misleading error messages on links with MACs.

Reported by Leonid Isaev.

(cherry picked from commit a669ea9860900d5cdebbc4cb9aaea72db7e28a02)

util consider 0x7F a control chracter which it is DE.patch | (download)

src/shared/util.c | 12 10 + 2 - 0 !
1 file changed, 10 insertions(+), 2 deletions(-)

 util: consider 0x7f a control chracter (which it is: del)

Let's better be safe than sorry.

(cherry picked from commit 3a8a916338d8446b938f3cf40f6aae0c611892e3)

main explain our etc empty check a bit in a comment.patch | (download)

src/core/main.c | 8 8 + 0 - 0 !
1 file changed, 8 insertions(+)

 main: explain our /etc empty check a bit in a comment

(cherry picked from commit 3408ba015aee3a88c91962c028738be757779519)

man add missing archs to ConditionArchitecture descr.patch | (download)

man/systemd.unit.xml | 8 7 + 1 - 0 !
1 file changed, 7 insertions(+), 1 deletion(-)

 man: add missing archs to conditionarchitecture= description

(cherry picked from commit f1e4d93f573087655ab1d0adb725102d5d2c1960)

man chroot jails are no longer detected by Condition.patch | (download)

man/systemd.unit.xml | 1 0 + 1 - 0 !
1 file changed, 1 deletion(-)

 man: chroot jails are no longer detected by conditionvirtualization=

(cherry picked from commit ac8ddf8c964f813464ef32cad1fcb7b61b692a01)

architecture add string table entries for mips le ar.patch | (download)

src/shared/architecture.c | 2 2 + 0 - 0 !
1 file changed, 2 insertions(+)

 architecture: add string table entries for mips-le archs which were
 missing

(cherry picked from commit 037c26d0aeb750ca9c8d605884ea1db7baecfea8)

service flush status text and errno values each time.patch | (download)

src/core/service.c | 3 3 + 0 - 0 !
1 file changed, 3 insertions(+)

 service: flush status text and errno values each time a service is
 started

We shouldn't show status texts from previous service starts

(cherry picked from commit 8cfdb077b8e3da1c47fc1d735d051f21f33144c1)

base filesystem.c terminate string array elements wi.patch | (download)

src/shared/base-filesystem.c | 11 6 + 5 - 0 !
1 file changed, 6 insertions(+), 5 deletions(-)

 base-filesystem.c: terminate string array elements with \0

NULSTR_FOREACH() looks for a terminating zero and the element also needs
one.

(cherry picked from commit 30d7c9c472bd7be1b6a09d3bd5afd939988de990)

man drop references to the priviliged command line o.patch | (download)

man/hostnamectl.xml | 8 0 + 8 - 0 !
man/localectl.xml | 8 0 + 8 - 0 !
2 files changed, 16 deletions(-)

 man: drop references to the --priviliged command line option which
 has been removed a while back

(cherry picked from commit ed3e4a3fd96891b5e7015723978e78cd21efd4fe)

fstab generator add comma when removed option is in .patch | (download)

src/shared/generator.c | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 fstab-generator: add comma when removed option is in the middle

xxx,x-systemd.default-timeout=y,zzz was filtered to xxxzzz,
but should be xxx,zzz, of course.

(cherry picked from commit 36a259d22c450fbf3f696df0161db50275a98667)

dropin add format attribute and fix a wrong caller.patch | (download)

src/shared/dropin.h | 4 3 + 1 - 0 !
src/shared/generator.c | 2 1 + 1 - 0 !
2 files changed, 4 insertions(+), 2 deletions(-)

 dropin: add format attribute and fix a wrong caller

(cherry picked from commit f5a4b0d3534bb13ef734a857647ab04be236c6f3)

add new systemd escape tool.patch | (download)

Makefile.am | 10 9 + 1 - 0 !
src/escape/escape.c | 46 46 + 0 - 0 !
2 files changed, 55 insertions(+), 1 deletion(-)

 add new systemd-escape tool

(cherry picked from commit b1a5a9989ada9b3738d71605f051ff393d41f2ff)

escape beef up new systemd escape tool.patch | (download)

src/escape/escape.c | 215 204 + 11 - 0 !
1 file changed, 204 insertions(+), 11 deletions(-)

 escape: beef up new systemd-escape tool

Add various options for making it easy unescape, or mangle, or format as
template instance or append a suffix.

(cherry picked from commit a1948c7bfeb87b54bc7715a44490c01593ee6e23)

man document systemd escape 1.patch | (download)

Makefile-man.am | 2 2 + 0 - 0 !
man/systemd-escape.xml | 193 193 + 0 - 0 !
2 files changed, 195 insertions(+)

 man: document systemd-escape(1)

(cherry picked from commit 9869e75929acd9377aa460074334d8523cf8e822)

Conflicts:
	Makefile-man.am

shared fix format string for usec_t type.patch | (download)

src/shared/generator.c | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 shared: fix format string for usec_t type

(cherry picked from commit de48d5ab62e452b596d6f2762422d0ab32c4d313)

logind allow switching to unused VTs via SwitchTo.patch | (download)

src/login/logind-seat.c | 7 6 + 1 - 0 !
1 file changed, 6 insertions(+), 1 deletion(-)

 logind: allow switching to unused vts via switchto()

If compositors use the new SwitchTo() logic to map F1-F12, we should allow
them to switch to unregistered VTs, too. Otherwise, the auto-spawn logic
of gettys won't trigger.

Reported-by: Jasper St. Pierre <jstpierre@mecheye.net>
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
(cherry picked from commit 154034270c4643b7cfe61c0be1676d78bb1b7b07)

systemctl fix visual alignment for lines prefixed wi.patch | (download)

src/systemctl/systemctl.c | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 systemctl: fix visual alignment for lines prefixed with color dots

(cherry picked from commit b7bbdabeb4a5b66fdbcdfed0d097109cfb39c43e)

accelerometer Don t wait for new data from the senso.patch | (download)

src/udev/accelerometer/accelerometer.c | 33 6 + 27 - 0 !
1 file changed, 6 insertions(+), 27 deletions(-)

 accelerometer: don't wait for new data from the sensor

Instead of waiting for new data from the sensor, which might be
a long time coming, depending on the sensor device, ask the kernel
for the last state for that particular input device.

(cherry picked from commit a545c6e1aa31b4d7e80c9d3609d9fc4fc9921498)

escape move to rootbindir.patch | (download)

Makefile.am | 6 3 + 3 - 0 !
1 file changed, 3 insertions(+), 3 deletions(-)

 escape: move to rootbindir

The systemd-escape utility might be used during early boot (e.g. when
being triggered from udev rules), so move it to rootbindir to support
systems with a split /usr setup.

(cherry picked from commit 2945a452b084879c6885efe51aefea00c179aa5f)

journal compress improve xz compression performance.patch | (download)

src/journal/compress.c | 14 12 + 2 - 0 !
1 file changed, 12 insertions(+), 2 deletions(-)

 journal/compress: improve xz compression performance

The new lzma2 compression options at the top of compress_blob_xz are
equivalent to using preset "0", exept for using a 1 MiB dictionary
(the same as preset "1"). This makes the memory usage at most 7.5 MiB
in the compressor, and 1 MiB in the decompressor, instead of the
previous 92 MiB in the compressor and 8 MiB in the decompressor.

According to test-compress-benchmark this commit makes XZ compression
20 times faster, with no increase in compressed data size.
Using more realistic test data (an ELF binary rather than repeating
ASCII letters 'a' through 'z' in order) it only provides a factor 10
speedup, and at a cost if a 10% increase in compressed data size.
But that is still a worthwhile trade-off.

According to test-compress-benchmark XZ compression is still 25 times
slower than LZ4, but the compressed data is one eighth the size.
Using more realistic test data XZ compression is only 18 times slower
than LZ4, and the compressed data is only one quarter the size.

$ ./test-compress-benchmark
XZ: compressed & decompressed 2535300963 bytes in 42.30s (57.15MiB/s), mean compresion 99.95%, skipped 3570 bytes
LZ4: compressed & decompressed 2535303543 bytes in 1.60s (1510.60MiB/s), mean compresion 99.60%, skipped 990 bytes

(cherry picked from commit 1930eed2a7855d2df06ccf51f9e394428bf547e2)

Conflicts:
	src/journal/compress.c

hostnamed add a new chassis type for watches.patch | (download)

src/hostname/hostnamed.c | 3 2 + 1 - 0 !
1 file changed, 2 insertions(+), 1 deletion(-)

 hostnamed: add a new chassis type for watches

(cherry picked from commit c49e59c1831f20fe02276d7bc6ba7d23d24c4ab3)

hostnamed update documentation with new watch chassi.patch | (download)

man/hostnamectl.xml | 3 2 + 1 - 0 !
man/machine-info.xml | 3 2 + 1 - 0 !
2 files changed, 4 insertions(+), 2 deletions(-)

 hostnamed: update documentation with new "watch" chassis type

(cherry picked from commit efab8d0b0ebf6d715949b7af66fecaf5e5e5d77b)

units make ExecStopPost action part of ExecStart.patch | (download)

units/emergency.service.in | 3 1 + 2 - 0 !
units/rescue.service.m4.in | 3 1 + 2 - 0 !
2 files changed, 2 insertions(+), 4 deletions(-)

 units: make execstoppost action part of execstart

Currently after exiting rescue shell we isolate default target. User
might want to isolate to some other target than default one. However
issuing systemctl isolate command to desired target would bring system
to default target as a consequence of running ExecStopPost action.

Having common ancestor for rescue shell and possible followup systemctl
default command should fix this. If user exits rescue shell we will
proceed with isolating default target, otherwise, on manual isolate,
parent shell process is terminated and we don't isolate default target,
but target chosen by user.

Suggested-by: Michal Schmidt <mschmidt@redhat.com>
(cherry picked from commit d3381512282f2ca1c7669f77fb736a90fdce6982)

util don t consider tabs special in string_has_cc an.patch | (download)

src/hostname/hostnamed.c | 3 1 + 2 - 0 !
src/shared/env-util.c | 4 3 + 1 - 0 !
src/shared/fileio.c | 2 1 + 1 - 0 !
src/shared/util.c | 19 10 + 9 - 0 !
src/shared/util.h | 2 1 + 1 - 0 !
5 files changed, 16 insertions(+), 14 deletions(-)

 util: don't consider tabs special in string_has_cc() anymore

Instead, take a list of exceptions to our usual CC check

(cherry picked from commit 6294aa76d818e831de4592b41a37e225fd0871f9)

util fix has cc check and add test.patch | (download)

src/shared/util.c | 2 1 + 1 - 0 !
src/test/test-util.c | 15 15 + 0 - 0 !
2 files changed, 16 insertions(+), 1 deletion(-)

 util: fix has cc check and add test


sysusers don t allow user names longer than UT_NAMES.patch | (download)

man/sysusers.d.xml | 2 1 + 1 - 0 !
src/sysusers/sysusers.c | 4 4 + 0 - 0 !
2 files changed, 5 insertions(+), 1 deletion(-)

 sysusers: don't allow user names longer than ut_namesize
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

As pointed out by Miloslav Trma─Ź it might be a good idea to make sure
that usernames stay with in the utmp-defined limits.

(cherry picked from commit 932ad62b84165b0acf690ea34c4b8083657ae244)

sysusers don t allow control characters in gecos fie.patch | (download)

src/sysusers/sysusers.c | 6 5 + 1 - 0 !
1 file changed, 5 insertions(+), 1 deletion(-)

 sysusers: don't allow control characters in gecos fields

(cherry picked from commit 38c74dad1c3d605018e61074e0b80f6b9523b1c8)

sysusers allow overrides in etc and run.patch | (download)

man/sysusers.d.xml | 63 44 + 19 - 0 !
src/sysusers/sysusers.c | 2 2 + 0 - 0 !
2 files changed, 46 insertions(+), 19 deletions(-)

 sysusers: allow overrides in /etc and /run

An administrator might want to block a certain sysusers config file from
being executed, e.g. to block the creation of a certain user.

Only a relatively short description is added in the man page, since
overrides should be relatively rare.

(cherry picked from commit 938a560b7608e8906134ed7d717c3f5aa459a760)

man document x systemd.device timeout for crypttab.patch | (download)

man/crypttab.xml | 15 15 + 0 - 0 !
1 file changed, 15 insertions(+)

 man: document x-systemd.device-timeout for crypttab

https://bugs.freedesktop.org/show_bug.cgi?id=54210
(cherry picked from commit dc5cd2b77288dc85c82cb95810cd14caee311e7e)

shell completion man beef up chassis completions and.patch | (download)

man/hostnamectl.xml | 73 40 + 33 - 0 !
shell-completion/bash/hostnamectl | 3 3 + 0 - 0 !
shell-completion/zsh/_hostnamectl | 32 30 + 2 - 0 !
shell-completion/zsh/_localectl | 4 2 + 2 - 0 !
4 files changed, 75 insertions(+), 37 deletions(-)

 shell-completion,man: beef up chassis completions and description

Parameters to hostnamectl command are not optional and should not be marked
as such in the man page.

(cherry picked from commit 1ed774956406941d4812a3fb4493d2915f130f12)

Revert build sys include PolicyKit files as part of .patch | (download)

Makefile.am | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 revert "build-sys: include policykit files as part of distribution"

This reverts commit 0c26bfc3d21fdb3963f1248c237e2f1a33b5566d.

src/core/org.freedesktop.systemd1.policy.in.in depends on values which
are specified at configure time, so we cannot ship the corresponding
policy file in the tarball.

Since we need to regenerate one policy file, we might as well generate
them all.

(cherry picked from commit 3ce142490907d31c33ac03d72554f92459192f92)

build sys Do not distribute generated emergency.serv.patch | (download)

Makefile.am | 1 0 + 1 - 0 !
1 file changed, 1 deletion(-)

 build-sys: do not distribute generated emergency.service

It is already in nodist_systemunit_DATA and if it is
shipped, it contains the hardcoded path to systemctl
which will cause it to fail to start when
rootprefix != prefix and rootbindir != bindir.

(cherry picked from commit 3864c28549d742427fdf33026e522e9f10a7e4ec)

sysusers preserve label of etc passwd group.patch | (download)

src/sysusers/sysusers.c | 13 12 + 1 - 0 !
1 file changed, 12 insertions(+), 1 deletion(-)

 sysusers: preserve label of /etc/{passwd, group}

These files are specially labeled on SELinux systems, and we need to
preserve that label.

(cherry picked from commit a334cbba7222d3d7d886c17c828fa4227c656535)

Add function to open temp files in selinux mode.patch | (download)

src/shared/fileio-label.c | 20 18 + 2 - 0 !
src/shared/fileio-label.h | 2 2 + 0 - 0 !
src/sysusers/sysusers.c | 15 4 + 11 - 0 !
3 files changed, 24 insertions(+), 13 deletions(-)

 add function to open temp files in selinux mode

(cherry picked from commit f7f628b5db770feb8b18990436baefaec55c460b)

man add systemd coredump 8 and a bunch of links.patch | (download)

Makefile-man.am | 4 3 + 1 - 0 !
man/coredumpctl.xml | 2 2 + 0 - 0 !
man/journalctl.xml | 1 1 + 0 - 0 !
man/systemd-coredump.xml | 105 105 + 0 - 0 !
man/systemd-journald.service.xml | 1 1 + 0 - 0 !
sysctl.d/50-coredump.conf.in | 4 3 + 1 - 0 !
6 files changed, 115 insertions(+), 2 deletions(-)

 man: add systemd-coredump(8) and a bunch of links

(cherry picked from commit 5146e7e8aec2d394c06771d4c9d0d03fc2cd911c)

man sysusers.d correct default user shell.patch | (download)

man/sysusers.d.xml | 2 1 + 1 - 0 !
1 file changed, 1 insertion(+), 1 deletion(-)

 man: sysusers.d correct default user shell

For the non-root user sysusers uses nologin as the default shell, not
login. Correct the documentation to match the code.

(cherry picked from commit eb34cba76323ea673471e226f97721bd6bdbcbf6)

man mention XDG_DATA_HOME in systemd.unit.patch | (download)

man/systemd.unit.xml | 12 11 + 1 - 0 !
1 file changed, 11 insertions(+), 1 deletion(-)

 man: mention xdg_data_home in systemd.unit

(cherry picked from commit 91acdc17a5b47e775369c6b907601f44fab07dcb)

path lookup don t make .local share systemd user a s.patch | (download)

src/shared/path-lookup.c | 18 0 + 18 - 0 !
1 file changed, 18 deletions(-)

 path-lookup: don't make ~/.local/share/systemd/user a symlink

We already encourage upstreams to keep the default configuration
separate from user customizations for software that is installed in
the system location. Let's allow that separation also for software
that is installed in the home directory.

Some discussion:
http://thread.gmane.org/gmane.comp.sysutils.systemd.devel/19627

(cherry picked from commit 667a1cd645c9402921dedff08a86bb35cddbcbf9)

fileio quote more shell characters in envfiles.patch | (download)

src/shared/fileio.c | 4 2 + 2 - 0 !
src/shared/util.h | 6 6 + 0 - 0 !
2 files changed, 8 insertions(+), 2 deletions(-)

 fileio: quote more shell characters in envfiles

Turns out, making strings shell-proof is harder than expected:

    # machinectl set-hostname "foo|poweroff" && . /etc/machine-info

(This could be simplified by quoting *and* escaping all characters,
which is harmless in shell but unnecessary.)

(cherry picked from commit 0ce5a80601597fe4d1a715a8f70ce8d5ccaa2d86)

man systemd.netdev make it clear that we do not touc.patch | (download)

man/systemd.netdev.xml | 5 4 + 1 - 0 !
1 file changed, 4 insertions(+), 1 deletion(-)

 man: systemd.netdev - make it clear that we do not touch preexisting
 netdevs

We will happily use bridges/bonds as master devices, but we will not change their settings if they were created by
someone else.

(cherry picked from commit 7c1cff4ff79f3121189403a8c1b7c350925b3aaa)

rules consistently use instead of.patch | (download)

rules/99-systemd.rules.in | 2 1 + 1 - 0 !
src/login/70-uaccess.rules | 12 6 + 6 - 0 !
2 files changed, 7 insertions(+), 7 deletions(-)

 rules: consistently use "?*" instead of "*?"

(cherry picked from commit 64dfe7b74446bd56e2d0e1588f900372ac13ae42)

timesyncd suppress resync at system time change when.patch | (download)

src/timesync/timesyncd.c | 3 3 + 0 - 0 !
1 file changed, 3 insertions(+)

 timesyncd: suppress resync at system time change when not connected

Jul 04 17:46:03 orchid systemd[1]: Starting Network Time Synchronization...
Jul 04 17:46:03 orchid systemd[1]: Started Network Time Synchronization.
Jul 04 17:46:22 orchid systemd-timesyncd[301]: System time changed. Resyncing.
Jul 04 17:46:22 orchid systemd-timesyncd[301]: Assertion 'm->current_server_name'

https://bugs.freedesktop.org/show_bug.cgi?id=80932
(cherry picked from commit afc7b1b9c170b9d23a3d91367e00f33b2ee2e89e)