Systemd/src/core
Lennart Poettering 0b1f3c768c tree-wide: reopen log when we need to log in FORK_CLOSE_ALL_FDS children
In a number of occasions we use FORK_CLOSE_ALL_FDS when forking off a
child, since we don't want to pass fds to the processes spawned (either
because we later want to execve() some other process there, or because
our child might hang around for longer than expected, in which case it
shouldn't keep our fd pinned). This also closes any logging fds, and
thus means logging is turned off in the child. If we want to do proper
logging, explicitly reopen the logs hence in the child at the right
time.

This is particularly crucial in the umount/remount children we fork off
the shutdown binary, as otherwise the children can't log, which is
why #8155 is harder to debug than necessary: the log messages we
generate about failing mount() system calls aren't actually visible on
screen, as they done in the child processes where the log fds are
closed.
2018-02-22 00:35:00 +01:00
..
audit-fd.c Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
audit-fd.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
automount.c pid1: rename unit_check_gc to unit_may_gc 2018-02-15 13:04:12 +01:00
automount.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
bpf-firewall.c bpf-firewall: fix warning text 2018-02-12 11:34:00 +01:00
bpf-firewall.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
cgroup.c core: add new new bus call for migrating foreign processes to scope/service units 2018-02-12 11:34:00 +01:00
cgroup.h core: add new new bus call for migrating foreign processes to scope/service units 2018-02-12 11:34:00 +01:00
chown-recursive.c Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
chown-recursive.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
dbus-automount.c dbus-automount: support more options in transient automount unit 2018-01-02 02:23:30 +09:00
dbus-automount.h core: add proper escaping to writing of drop-ins/transient unit files 2017-11-29 12:34:12 +01:00
dbus-cgroup.c cgroup: add a new "can_delegate" flag to the unit vtable, and set it for scope and service units only 2018-02-12 11:34:00 +01:00
dbus-cgroup.h core: add proper escaping to writing of drop-ins/transient unit files 2017-11-29 12:34:12 +01:00
dbus-device.c Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
dbus-device.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
dbus-execute.c core: add DBus API for TemporaryFileSystem= 2018-02-21 09:18:20 +09:00
dbus-execute.h core: rename bus_exec_command_set_transient_property() to bus_set_transient_exec_command() 2018-01-02 02:23:56 +09:00
dbus-job.c Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
dbus-job.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
dbus-kill.c dbus-kill: simplify bus_kill_context_set_transient_property() 2018-01-02 02:23:36 +09:00
dbus-kill.h core: add proper escaping to writing of drop-ins/transient unit files 2017-11-29 12:34:12 +01:00
dbus-manager.c core: add new new bus call for migrating foreign processes to scope/service units 2018-02-12 11:34:00 +01:00
dbus-manager.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
dbus-mount.c dbus-mount: support more options in transient mount unit 2018-01-02 02:23:32 +09:00
dbus-mount.h core: add proper escaping to writing of drop-ins/transient unit files 2017-11-29 12:34:12 +01:00
dbus-path.c dbus-path: add Paths= option to set path specs in transient path unit 2018-01-03 02:32:30 +09:00
dbus-path.h core/path: implement transient path unit 2017-12-15 09:10:34 +09:00
dbus-scope.c core: add new new bus call for migrating foreign processes to scope/service units 2018-02-12 11:34:00 +01:00
dbus-scope.h core: add proper escaping to writing of drop-ins/transient unit files 2017-11-29 12:34:12 +01:00
dbus-service.c dbus-service: expose *ExitStatus= settings on bus 2018-01-03 02:32:10 +09:00
dbus-service.h core: add proper escaping to writing of drop-ins/transient unit files 2017-11-29 12:34:12 +01:00
dbus-slice.c core: add proper escaping to writing of drop-ins/transient unit files 2017-11-29 12:34:12 +01:00
dbus-slice.h core: add proper escaping to writing of drop-ins/transient unit files 2017-11-29 12:34:12 +01:00
dbus-socket.c dbus-socket: simplify bus_socket_set_transient_property() 2018-01-02 02:25:04 +09:00
dbus-socket.h core: add proper escaping to writing of drop-ins/transient unit files 2017-11-29 12:34:12 +01:00
dbus-swap.c core: add proper escaping to writing of drop-ins/transient unit files 2017-11-29 12:34:12 +01:00
dbus-swap.h core: add proper escaping to writing of drop-ins/transient unit files 2017-11-29 12:34:12 +01:00
dbus-target.c Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
dbus-target.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
dbus-timer.c core: double free in bus_timer_set_transient_property 2018-01-04 11:31:37 +01:00
dbus-timer.h core: add proper escaping to writing of drop-ins/transient unit files 2017-11-29 12:34:12 +01:00
dbus-unit.c core: add new new bus call for migrating foreign processes to scope/service units 2018-02-12 11:34:00 +01:00
dbus-unit.h core: add new new bus call for migrating foreign processes to scope/service units 2018-02-12 11:34:00 +01:00
dbus-util.c dbus-util: properly parse timeout values 2018-01-11 15:12:16 +01:00
dbus-util.h dbus-cgroup: simplify bus_cgroup_set_property() 2018-01-03 02:33:16 +09:00
dbus.c core: in bus_init_system() make sure we setup the system bus even if we inherit the API bus 2018-02-12 11:34:00 +01:00
dbus.h core: delay bus name synchronization after reload/reexec into a later event loop iteration 2018-02-12 11:34:00 +01:00
device.c tree-wide: use path_hash_ops instead of string_hash_ops whenever we key by a path 2018-02-12 11:07:55 +01:00
device.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
dynamic-user.c tree-wide: make use of new STRLEN() macro everywhere (#7639) 2017-12-14 19:02:29 +01:00
dynamic-user.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
emergency-action.c pid1: add option to disable service watchdogs 2018-01-22 18:10:03 +01:00
emergency-action.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
execute.c core: add new setting TemporaryFileSystem= 2018-02-21 09:17:52 +09:00
execute.h core: add new setting TemporaryFileSystem= 2018-02-21 09:17:52 +09:00
hostname-setup.c hostname-util: rework read_hostname_config() a bit 2017-11-20 16:43:15 +01:00
hostname-setup.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
ima-setup.c tree-wide: make use of new STRLEN() macro everywhere (#7639) 2017-12-14 19:02:29 +01:00
ima-setup.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
ip-address-access.c ip-address-access: let's exit the loop after invalidating our entry a (#7803) 2018-01-04 13:24:40 +01:00
ip-address-access.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
job.c job: truncate unit description 2018-02-19 12:37:30 +01:00
job.h pid1: rename job_check_gc to job_may_gc 2018-02-15 14:09:40 +01:00
kill.c cocci: use strempty() at more places 2018-01-10 17:11:19 +01:00
kill.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
killall.c shutdown: make kill timeout configurable (#7835) 2018-01-10 19:00:20 +01:00
killall.h shutdown: make kill timeout configurable (#7835) 2018-01-10 19:00:20 +01:00
kmod-setup.c Fix build without libkmod 2017-11-24 13:54:20 +01:00
kmod-setup.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
load-dropin.c Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
load-dropin.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
load-fragment-gperf-nulstr.awk build-sys: fix the script used for generating load_fragment_gperf_nulstr (#6646) 2017-08-26 23:21:23 +09:00
load-fragment-gperf.gperf.m4 core: add new setting TemporaryFileSystem= 2018-02-21 09:17:52 +09:00
load-fragment.c core: add new setting TemporaryFileSystem= 2018-02-21 09:17:52 +09:00
load-fragment.h core: add new setting TemporaryFileSystem= 2018-02-21 09:17:52 +09:00
locale-setup.c log: minimize includes in log.h 2018-01-11 14:44:31 +01:00
locale-setup.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
loopback-setup.c loopback-setup: update log message (#7956) 2018-01-23 09:50:31 +09:00
loopback-setup.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
machine-id-setup.c machine-id-setup: use return log_error… pattern 2017-12-19 15:20:38 +01:00
machine-id-setup.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
macros.systemd.in Merge pull request #8104 from keszybz/tmpfiles-allow-overrides 2018-02-07 12:12:52 +01:00
main.c Merge pull request #8199 from keszybz/small-things 2018-02-19 16:55:10 +01:00
manager.c Merge pull request #8199 from keszybz/small-things 2018-02-19 16:55:10 +01:00
manager.h core: delay bus name synchronization after reload/reexec into a later event loop iteration 2018-02-12 11:34:00 +01:00
meson.build Merge pull request #8202 from keszybz/avoid-msgmerge 2018-02-18 19:56:50 +01:00
mount-setup.c pid1: do not initialize join_controllers by default 2018-02-19 15:18:54 +01:00
mount-setup.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
mount.c Merge pull request #8175 from keszybz/gc-cleanup 2018-02-15 17:47:37 +01:00
mount.h mount: mountinfo event is supposed to always arrive before SIGCHLD 2018-01-23 11:09:06 +00:00
namespace.c core: add new option 'tmpfs' to ProtectHome= 2018-02-21 09:18:17 +09:00
namespace.h core: add new option 'tmpfs' to ProtectHome= 2018-02-21 09:18:17 +09:00
org.freedesktop.systemd1.conf core: add new new bus call for migrating foreign processes to scope/service units 2018-02-12 11:34:00 +01:00
org.freedesktop.systemd1.policy.in meson: drop double .in suffix for o.fd.systemd1.policy file 2018-02-16 13:01:12 +01:00
org.freedesktop.systemd1.service Add SPDX license headers to various assorted files 2017-11-19 19:08:15 +01:00
path.c core/path: implement transient path unit 2017-12-15 09:10:34 +09:00
path.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
scope.c core: add new new bus call for migrating foreign processes to scope/service units 2018-02-12 11:34:00 +01:00
scope.h core: track scope controllers on the bus 2017-11-23 21:47:48 +01:00
selinux-access.c Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
selinux-access.h selinux: make sure we never use /dev/null for making unit selinux access decisions 2018-01-31 19:54:25 +01:00
selinux-setup.c Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
selinux-setup.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
service.c core: change KeyringMode= to "shared" by default for non-service units in the system manager (#8172) 2018-02-20 08:53:34 +01:00
service.h service: Don't stop unneeded units needed by restarted service (#7526) 2017-12-05 16:51:19 +01:00
show-status.c Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
show-status.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
shutdown.c shutdown: explicitly set a log target in shutdown.c 2018-02-22 00:33:12 +01:00
slice.c pid1: include the source unit in UnitRef 2018-02-15 13:27:06 +01:00
slice.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
smack-setup.c tree-wide: use __fsetlocking() instead of fxyz_unlocked() 2017-12-14 10:42:25 +01:00
smack-setup.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
socket.c Merge pull request #8175 from keszybz/gc-cleanup 2018-02-15 17:47:37 +01:00
socket.h pid1: rename unit_check_gc to unit_may_gc 2018-02-15 13:04:12 +01:00
swap.c Merge pull request #8175 from keszybz/gc-cleanup 2018-02-15 17:47:37 +01:00
swap.h core: unify common code for preparing for forking off unit processes 2017-11-21 11:54:08 +01:00
system.conf.in meson: add -Dmemory-accounting-default=true|false 2018-02-15 12:02:41 +01:00
systemd.pc.in build-sys: make the dynamic UID range, and the container UID range configurable 2017-12-06 12:55:37 +01:00
target.c Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
target.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
timer.c core/timer: Prevent timer looping when unit cannot start 2018-01-22 17:13:00 +01:00
timer.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
transaction.c Replace free and return NULL with return mfree 2017-11-24 10:31:49 +00:00
transaction.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
triggers.systemd.in Add more file triggers to handle more aspects of systemd (#8090) 2018-02-06 10:11:36 +01:00
umount.c tree-wide: reopen log when we need to log in FORK_CLOSE_ALL_FDS children 2018-02-22 00:35:00 +01:00
umount.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
unit-printf.c specifier: unify specifier implementations for user-related specifiers 2017-11-29 12:32:56 +01:00
unit-printf.h Add SPDX license identifiers to source files under the LGPL 2017-11-19 19:08:15 +01:00
unit.c core: change KeyringMode= to "shared" by default for non-service units in the system manager (#8172) 2018-02-20 08:53:34 +01:00
unit.h Merge pull request #8175 from keszybz/gc-cleanup 2018-02-15 17:47:37 +01:00
user.conf core: rename StartLimitInterval= to StartLimitIntervalSec= 2016-04-29 16:27:48 +02:00