From 19c4be54e82a58129448cbc56fbf2cc579b5ab29 Mon Sep 17 00:00:00 2001 Message-Id: <19c4be54e82a58129448cbc56fbf2cc579b5ab29@dist-git> From: Andrea Bolognani Date: Tue, 6 Sep 2016 16:42:23 +0200 Subject: [PATCH] virtlogd.socket: Tie lifecycle to libvirtd.service We already guarantee that virtlogd.socket is enabled/disabled along with libvirtd.service, but if libvirtd.service has just been installed and is started before rebooting, then virtlogd.socket will not be running and guest startup will fail. Add Requires=virtlogd.socket to libvirtd.service to make sure virtlogd.socket is always started along with libvirtd.service, and add Before=libvirtd.service to both virtlogd.socket and virtlogd.service so that virtlogd never disappears before libvirtd has exited. Also add PartOf=libvirtd.service to both virtlogd.socket and virtlogd.service, so that virtlogd can be shut down when not needed. Resolves: https://bugzilla.redhat.com/1372576 (cherry picked from commit 839a060890d8b2408c0ea20e3c5997c7b2a4a079) Signed-off-by: Andrea Bolognani --- daemon/libvirtd.service.in | 1 + src/logging/virtlogd.service.in | 2 ++ src/logging/virtlogd.socket.in | 2 ++ 3 files changed, 5 insertions(+) diff --git a/daemon/libvirtd.service.in b/daemon/libvirtd.service.in index 1616e7a..bbf27da 100644 --- a/daemon/libvirtd.service.in +++ b/daemon/libvirtd.service.in @@ -5,6 +5,7 @@ [Unit] Description=Virtualization daemon +Requires=virtlogd.socket Before=libvirt-guests.service After=network.target After=dbus.service diff --git a/src/logging/virtlogd.service.in b/src/logging/virtlogd.service.in index a264d3a..8287994 100644 --- a/src/logging/virtlogd.service.in +++ b/src/logging/virtlogd.service.in @@ -1,6 +1,8 @@ [Unit] Description=Virtual machine log manager Requires=virtlogd.socket +Before=libvirtd.service +PartOf=libvirtd.service Documentation=man:virtlogd(8) Documentation=http://libvirt.org diff --git a/src/logging/virtlogd.socket.in b/src/logging/virtlogd.socket.in index 724976d..efb6504 100644 --- a/src/logging/virtlogd.socket.in +++ b/src/logging/virtlogd.socket.in @@ -1,5 +1,7 @@ [Unit] Description=Virtual machine log manager socket +Before=libvirtd.service +PartOf=libvirtd.service [Socket] ListenStream=@localstatedir@/run/libvirt/virtlogd-sock -- 2.10.0