]> git.ipfire.org Git - thirdparty/libvirt.git/commit
qemu: Fix shutdown regression with buggy qemu
authorJiri Denemark <jdenemar@redhat.com>
Wed, 21 Sep 2011 08:25:29 +0000 (10:25 +0200)
committerJiri Denemark <jdenemar@redhat.com>
Wed, 21 Sep 2011 14:53:06 +0000 (16:53 +0200)
commitf84aedad090da1e05ccc5651815febba013eb3ad
tree8964e58d2b243eb53ddde167874d097ec6c48674
parente531f9a9d87df6611974c0a59390fb9a389d75a9
qemu: Fix shutdown regression with buggy qemu

The commit that prevents disk corruption on domain shutdown
(96fc4784177ecb70357518fa863442455e45ad0e) causes regression with QEMU
0.14.* and 0.15.* because of a regression bug in QEMU that was fixed
only recently in QEMU git. The affected versions of QEMU do not quit on
SIGTERM if started with -no-shutdown, which we use to implement fake
reboot. Since -no-shutdown tells QEMU not to quit automatically on guest
shutdown, domains started using the affected QEMU cannot be shutdown
properly and stay in a paused state.

This patch disables fake reboot feature on such QEMU by not using
-no-shutdown, which makes shutdown work as expected. However,
virDomainReboot will not work in this case and it will report "Requested
operation is not valid: Reboot is not supported with this QEMU binary".
src/qemu/qemu_capabilities.c
src/qemu/qemu_capabilities.h
src/qemu/qemu_command.c
src/qemu/qemu_driver.c
tests/qemuhelptest.c
tests/qemuxml2argvdata/qemuxml2argv-monitor-json.args
tests/qemuxml2argvdata/qemuxml2argv-no-shutdown.args [new file with mode: 0644]
tests/qemuxml2argvdata/qemuxml2argv-no-shutdown.xml [new file with mode: 0644]
tests/qemuxml2argvtest.c