[libvirt] [PATCH] qemuDomainObjBeginJob: Don't account DESTROY job to maxQueuedJobs

John Ferlan jferlan at redhat.com
Tue Mar 6 16:20:22 UTC 2018



On 03/05/2018 04:36 AM, Michal Privoznik wrote:
> When trying to destroy a domain (e.g. because we've seen EOF on
> the monitor) we try to acquire QEMU_JOB_DESTROY. However, if
> max_queued is set in qemu.conf this may fail and since our code
> doesn't count on that we will still report domain as active even
> though the qemu process is long gone. More specifically, if we've
> seen EOF on the monitor, qemuProcessHandleMonitorEOF() is called
> which sends MONITOR_EOF job to the event worker pool and
> unregisters monitor from the event loop. The worker pool calls
> processMonitorEOFEvent() which tries to set job which may fail
> due to the limit as described above.
> 
> Signed-off-by: Michal Privoznik <mprivozn at redhat.com>
> ---
>  src/qemu/qemu_domain.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 

Should the qemu.conf explanation be adjusted to specifically note that a
DESTROY job does not count against the max queue jobs count?

Reviewed-by: John Ferlan <jferlan at redhat.com>

John




More information about the libvir-list mailing list