Systemd/src
Kumar Kartikeya Dwivedi 4f07ddfa9b
Introduce sd_notify_barrier
This adds the sd_notify_barrier function, to allow users to synchronize against
the reception of sd_notify(3) status messages. It acts as a synchronization
point, and a successful return gurantees that all previous messages have been
consumed by the manager. This can be used to eliminate race conditions where
the sending process exits too early for systemd to associate its PID to a
cgroup and attribute the status message to a unit correctly.

systemd-notify now uses this function for proper notification delivery and be
useful for NotifyAccess=all units again in user mode, or in cases where it
doesn't have a control process as parent.

Fixes: #2739
2020-05-01 03:22:47 +05:30
..
ac-power
activate
analyze verify: ignore nonexistent executables if required 2020-04-14 21:23:31 +02:00
ask-password
backlight
basic efi: honour SYSTEMD_EFI_OPTIONS even if we wouldn't honour SystemdOptions EFI var due to SecureBoot 2020-04-30 12:12:14 +02:00
binfmt binfmt: also unregister binfmt entries from unit 2020-04-23 17:14:45 +02:00
boot tree-wide: fix spelling errors 2020-04-21 23:21:08 +02:00
busctl busctl: wrap long lines 2020-04-10 16:40:48 +02:00
cgls
cgroups-agent
cgtop
core Introduce sd_notify_barrier 2020-05-01 03:22:47 +05:30
coredump tree-wide: use cmsg_find() helper at various places where appropriate 2020-04-23 19:41:15 +02:00
cryptsetup tree-wide: spellcheck using codespell 2020-04-16 18:00:40 +02:00
debug-generator
delta
detect-virt
dissect
environment-d-generator sd-path: rename the two functions 2020-03-27 20:12:44 +01:00
escape
firstboot tree-wide: use "hostname" spelling everywhere 2020-04-21 16:58:04 +02:00
fsck
fstab-generator fstab-generator: handle systemd.swap= command-line argument 2020-03-12 17:52:43 +01:00
fuzz ci: turn off FuzzBuzz 2020-03-30 14:57:22 +02:00
getty-generator
gpt-auto-generator
hibernate-resume
home homectl: say "home area" in more places 2020-04-28 09:56:24 +02:00
hostname Merge pull request #15472 from keszybz/dbus-api-docs 2020-04-23 17:01:11 +02:00
hwdb
id128
import socket-util: introduce type-safe, dereferencing wrapper CMSG_FIND_DATA around cmsg_find() 2020-04-23 19:41:15 +02:00
initctl tree-wide: use structured initialization at various places 2020-04-24 07:44:42 +02:00
journal tests: various small fixes for strict systems 2020-04-26 20:18:48 +02:00
journal-remote Support journal-upload HTTPS without key and certificate 2020-04-16 14:05:41 +03:00
kernel-install Add meson build option to prevent building kernel-install 2020-04-14 20:22:32 +02:00
libsystemd Introduce sd_notify_barrier 2020-05-01 03:22:47 +05:30
libsystemd-network dhcp6: make string argument to sd_dhcp6_client_set_request_mud_url() const 2020-04-24 10:13:33 +02:00
libudev tree-wide: fix spelling errors 2020-04-21 23:21:08 +02:00
locale tree-wide: implement new log control API dbus interface in all our daemons 2020-04-21 17:08:16 +02:00
login Add SetType method to login Session interface 2020-04-30 21:29:26 +02:00
machine tree-wide: implement new log control API dbus interface in all our daemons 2020-04-21 17:08:16 +02:00
machine-id-setup
modules-load
mount systemd: Fix busctl crash on aarch64 when setting output table format 2020-02-16 02:09:26 +09:00
network networkd: don't do lldp rx nor tx on bond devices 2020-04-23 20:01:30 +02:00
notify Introduce sd_notify_barrier 2020-05-01 03:22:47 +05:30
nspawn nspawn: be more careful with creating/chowning directories to overmount 2020-04-28 19:40:46 +02:00
nss-myhostname tree-wide: use "hostname" spelling everywhere 2020-04-21 16:58:04 +02:00
nss-mymachines
nss-resolve
nss-systemd nss-systemd: don't synthesize root/nobody when iterating 2020-04-23 23:07:08 +02:00
partition tree-wide: spellcheck using codespell 2020-04-16 18:00:40 +02:00
path path: log at debug level when we can't query a variable 2020-03-27 20:12:45 +01:00
portable tree-wide: use recvmsg_safe() at various places 2020-04-23 09:41:47 +02:00
pstore
quotacheck
random-seed random-seed: add missing header for GRND_NONBLOCK (#14988) 2020-03-02 14:48:21 +09:00
rc-local-generator
remount-fs
reply-password
resolve tree-wide: support a bunch of additional specifiers 2020-04-28 22:47:21 +02:00
rfkill
run run: don't wait for start job to complete when running interactively anyway 2020-04-23 09:47:20 +02:00
run-generator
shared link: Allow configuring RX mini and jumbo ring sizes, too 2020-04-29 18:57:13 +02:00
shutdown shutdown: unregister all binfmt_misc entries before entering shutdown loop 2020-04-23 17:14:38 +02:00
sleep
socket-proxy tree-wide: use the return value from sockaddr_un_set_path() 2020-03-02 15:55:44 +01:00
stdio-bridge
sulogin-shell
sysctl sysctl: fix segfault 2020-02-06 23:49:32 +09:00
system-update-generator
systemctl sd-bus: work around ubsan warning 2020-04-23 08:54:30 +02:00
systemd Introduce sd_notify_barrier 2020-05-01 03:22:47 +05:30
sysusers tree-wide: support a bunch of additional specifiers 2020-04-28 22:47:21 +02:00
sysv-generator
test tree-wide: support a bunch of additional specifiers 2020-04-28 22:47:21 +02:00
time-wait-sync
timedate tree-wide: implement new log control API dbus interface in all our daemons 2020-04-21 17:08:16 +02:00
timesync tree-wide: use recvmsg_safe() at various places 2020-04-23 09:41:47 +02:00
tmpfiles Merge pull request #15626 from poettering/more-specifiers 2020-04-29 10:07:12 +02:00
tty-ask-password-agent tree-wide: use the return value from sockaddr_un_set_path() 2020-03-02 15:55:44 +01:00
udev link: Allow configuring RX mini and jumbo ring sizes, too 2020-04-29 18:57:13 +02:00
update-done
update-utmp Remove unneded {}s 2020-04-13 09:31:49 +02:00
user-sessions
userdb userdbctl: make --help fit in 80 columns 2020-04-28 09:56:24 +02:00
vconsole
veritysetup
version tree-wide: spellcheck using codespell 2020-04-16 18:00:40 +02:00
volatile-root