[libvirt] [PATCH] Leave all child processes running when stopping systemd service

Mark McLoughlin markmc at redhat.com
Thu Mar 22 14:10:30 UTC 2012


On Thu, 2012-03-22 at 14:03 +0000, Daniel P. Berrange wrote:
> From: "Daniel P. Berrange" <berrange at redhat.com>
> 
> Currently the libvirt.service unit file for systemd does not
> specify any kill mode. So systemd kills off every process
> inside its cgroup. ie all dnsmasq processes, all virtual
> machines. This obviously not what we want. Set KillMode=process
> so that it only kills the top level process of libvirtd
> 
> * daemon/libvirtd.service.in: Add KillMode=process

I was still looking through this. Try doing:

  $> systemctl restart libvirtd.service

It's killing the existing processes in the cgroup when starting the
service. From poking at an strace, this looks like the code that's doing
it:

  http://cgit.freedesktop.org/systemd/systemd/tree/src/service.c?id=75c8e3cf#n2093

Cheers,
Mark.




More information about the libvir-list mailing list