On 10/12/14 14:12, Martin Kletzander wrote:
> When daemon is killed right in the middle of probing a qemu binary for
> its capabilities, the VM is left running.  Next time the daemon is

s/VM/qemu process/ ? The qemu isn't running anything so it might confuse
someone.

> starting, it cannot start qemu process because the one that's already
> running does have the pidfile flock()'d.
> 
> Reported-by: Wang Yufei <james.wangyu...@huawei.com>
> 
> Signed-off-by: Martin Kletzander <mklet...@redhat.com>
> ---
> v2:
>  - Don't use "/proc", but simply just try to acquire the pidfile.
>  - https://www.redhat.com/archives/libvir-list/2014-October/msg00320.html
> 
>  src/qemu/qemu_capabilities.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
> index 6fcb5c7..8aedf3f 100644
> --- a/src/qemu/qemu_capabilities.c
> +++ b/src/qemu/qemu_capabilities.c
> @@ -3243,6 +3243,8 @@ virQEMUCapsInitQMP(virQEMUCapsPtr qemuCaps,
>      config.data.nix.path = monpath;
>      config.data.nix.listen = false;
> 
> +    virPidFileForceCleanupPath(pidfile);
> +
>      VIR_DEBUG("Try to get caps via QMP qemuCaps=%p", qemuCaps);
> 
>      /*

ACK. It is a bugfix, but the code path is is critical. I'm leaning
towards pushing this before the freeze but I'd feel better with yet
another opinion.

Peter


Attachment: signature.asc
Description: OpenPGP digital signature

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to