systemd: Augment Requires/Wants with After

Requires/Wants only tells systemd that the corresponding unit
should be started when the current one is, but that could very
well happen in parallel. For virtlogd/virtlockd, we want the
socket to be already active when the hypervisor driver is
started.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
Andrea Bolognani 2023-09-25 17:16:20 +02:00
parent 087a619877
commit 2ca96a810e
6 changed files with 13 additions and 1 deletions

View File

@ -1,5 +1,6 @@
[Unit]
Wants=virtlockd.socket
After=virtlockd.socket
After=remote-fs.target
After=xencommons.service
Conflicts=xendomains.service

View File

@ -3,6 +3,7 @@ Description=Virtual machine lock manager
BindsTo=virtlockd.socket
Wants=virtlockd-admin.socket
After=virtlockd.socket
After=virtlockd-admin.socket
Before=libvirtd.service
Documentation=man:virtlockd(8)
Documentation=https://libvirt.org

View File

@ -3,6 +3,7 @@ Description=Virtual machine log manager
BindsTo=virtlogd.socket
Wants=virtlogd-admin.socket
After=virtlogd.socket
After=virtlogd-admin.socket
Before=libvirtd.service
Documentation=man:virtlogd(8)
Documentation=https://libvirt.org

View File

@ -1,6 +1,8 @@
[Unit]
Requires=virtlogd.socket
Wants=virtlockd.socket
After=virtlogd.socket
After=virtlockd.socket
Wants=systemd-machined.service
After=systemd-machined.service
After=remote-fs.target

View File

@ -1,13 +1,18 @@
[Unit]
Description=Virtualization daemon
Requires=virtlogd.socket
# Use Wants instead of Requires so that users
# can disable these three .socket units to revert
# to a traditional non-activation deployment setup
Wants=libvirtd.socket
Wants=libvirtd-ro.socket
Wants=libvirtd-admin.socket
After=libvirtd.socket
After=libvirtd-ro.socket
After=libvirtd-admin.socket
Requires=virtlogd.socket
Wants=virtlockd.socket
After=virtlogd.socket
After=virtlockd.socket
Wants=systemd-machined.service
After=network.target
After=dbus.service

View File

@ -4,6 +4,8 @@ BindsTo=@service@.socket
Wants=@service@-ro.socket
Wants=@service@-admin.socket
After=@service@.socket
After=@service@-ro.socket
After=@service@-admin.socket
Conflicts=libvirtd.service
After=libvirtd.service
After=network.target