[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCH] qemu: Fix shutdown regression

On 09/20/2011 01:10 PM, Jiri Denemark wrote:
On Tue, Sep 20, 2011 at 19:39:15 +0200, Jiri Denemark wrote:
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. With affected QEMU binaries, domains cannot
be shutdown properly and stay in a paused state. This patch tries to
avoid this by sending SIGKILL to 0.1[45].* QEMU processes. Though we
wait a bit more between sending SIGTERM and SIGKILL to reduce the
possibility of virtual disk corruption.

An alternative solution would be to break reboot on affected QEMUs instead of
trying to live with possible data corruption as if libvirt 0.9.[34] is used.
That is, virDomainReboot would report unsupported operation because current
emulator binary is not able to support it without causing possible data
corruption during shutdown.

That makes sense - that is, we don't use -no-shutdown, so virDomainReboot reports failure, but then virDomainDestroy doesn't tickle the bug and can unconditionally work as it has always done.

I like that idea a bit better, especially since it sounds like upstream qemu is reluctant to modify -help text to help us out.

Eric Blake   eblake redhat com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]