[Pkg-libvirt-maintainers] Bug#761521: Bug#761521: libvirt-daemon: fails to restart domain with error 'CreateMachine: File exists'

Paul Millar paul.millar at desy.de
Sat Sep 20 12:53:54 UTC 2014


Hi,

On 16/09/14 09:16, Guido Günther wrote:
> However VMs create a machine.slice here:
>
> ./cpuset/machine.slice/machine-qemu\x2d<machinename>.scope/
>
> Could you check if this gets properly removed when you shut down the domain?
> Cheers,

I have a couple of bits of information that could prove useful.

In /etc/libvirt/qemu.conf I have the line:

     user = "paul"

If I comment out this line and restart the machine then the qemu process 
runs as user "libvirt+" and the problem goes away.


Second, I've found a work-around for the problem, which is to run (as 
user paul) the following command:

     kill $(cat 
/sys/fs/cgroup/systemd/machine.slice/machine-qemu\\x2dxanadu.scope/tasks)

After this, the machine.slice directory no longer contains a 
machine-qemu\\x2xanadu.scope directory.

The 'tasks' file contains four pids, two of which are active after the 
domain has shut down.  These still-running processes are:

     /usr/bin/pulseaudio --start --log-target=syslog

and

     /usr/lib/pulseaudio/pulse/gconf-helper

Before starting the domain, I have a pulseaudio and gconf-helper 
processes running.  After starting the domain, I have two pulseaudio and 
two gconf-helper processes.

When I remove the user="paul" line from qemu.conf (so qemu runs as user 
"libvirt+") no additional pulseaudio or gconf-helper processes are 
started when starting the domain.

Therefore, it looks like the problem is caused by additional 
pulseaudio/gconf-helper processes mistakenly created, or the process 
responsible for killing them when the domain shuts down is unable to do 
so or fails to receive the notification.

HTH,

Paul



More information about the Pkg-libvirt-maintainers mailing list