[libvirt] [Question] capabilities.pidfile is left behind while starting and stopping libvirtd repeatly

Wang Yufei james.wangyufei at huawei.com
Tue Sep 30 09:34:54 UTC 2014


Hi, all

I started and stopped libvirtd service repeatly with high frequency(1 per second), and found that the file capabilities.pidfile is left behind, as well as a qemu process. If I then restart libvirtd, qemu-kvm will fail to start as it's unable to flock capabilities.pidfile's fd.


Steps to reproduce the problem:
1. start libvirtd service per second with a shell script.
2. meanwhile, stop libvirtd service per second with another shell script.
3. then, a process qemu is left behind:
    /usr/bin/qemu-kvm -S -no-user-config -nodefaults -nographic -M none -qmp unix:/var/lib/libvirt/qemu/capabilities.monitor.sock,server,nowait -pidfile /var/lib/libvirt/qemu/capabilities.pidfile -daemonize
4. file /var/lib/libvirt/qemu/capabilities.pidfile is left behind
5. start libvirtd again, the process qemu-kvm fails to start.


The cause of the problem:
   This file is generated by qemu, and deleted by libvirtd. If libvirtd got killed before it removes the pidfile, it would be left behind then.

Question:
   Would it be fine if I kill qemu-kvm process and unlink capabilities.pidfile, just before virQEMUCapsInitQMP runs this qemu-kvm process?

-- 
Best Regards

Wang Yufei




More information about the libvir-list mailing list