]> git.ipfire.org Git - thirdparty/libvirt.git/commit
qemu: Pass qemuCaps to qemuMigrationAnyPrepareDef
authorJiri Denemark <jdenemar@redhat.com>
Mon, 5 Aug 2019 15:31:10 +0000 (17:31 +0200)
committerJiri Denemark <jdenemar@redhat.com>
Fri, 9 Aug 2019 11:55:54 +0000 (13:55 +0200)
commitb900f7387fca1cf3567935c81136579d6bee95ca
treec6ff42d285398e557648a32fcf7a68442d3fc74f
parentfd60aefec7f49d1053efdd5119db494bb474aeec
qemu: Pass qemuCaps to qemuMigrationAnyPrepareDef

Since qemuDomainDefPostParse callback requires qemuCaps, we need to make
sure it gets the capabilities stored in the domain's private data if the
domain is running. Passing NULL may cause QEMU capabilities probing to
be triggered in case QEMU binary changed in the meantime. When this
happens while a running domain object is locked, QMP event delivered to
the domain before QEMU capabilities probing finishes will deadlock the
event loop.

This patch fixes all paths leading to qemuMigrationAnyPrepareDef.

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
src/qemu/qemu_driver.c
src/qemu/qemu_migration.c
src/qemu/qemu_migration.h