Re: [PATCH] qemu: Prevent disk corruption on domain shutdown

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

 



On Fri, Sep 16, 2011 at 12:06:50 +0100, Daniel P. Berrange wrote:
> On Thu, Sep 15, 2011 at 12:07:27PM +0200, Jiri Denemark wrote:
> > Ever since we introduced fake reboot, we call qemuProcessKill as a
> > reaction to SHUTDOWN event. Unfortunately, qemu doesn't guarantee it
> > flushed all internal buffers before sending SHUTDOWN, in which case
> > killing the process forcibly may result in (virtual) disk corruption.
> > 
> > By sending just SIGTERM without SIGKILL we give qemu time to to flush
> > all buffers and exit. Once qemu exits, we will see an EOF on monitor
> > connection and tear down the domain. In case qemu ignores SIGTERM or
> > just hangs there, the process stays running but that's not any different
> > from a possible hang anytime during the shutdown process so I think it's
> > just fine.
> > 
> > Also qemu (since 0.14 until it's fixed) has a bug in SIGTERM processing
> > which causes it not to exit but instead send new SHUTDOWN event and keep
> > waiting. I think the best we can do is to ignore duplicate SHUTDOWN
> > events to avoid a SHUTDOWN-SIGTERM loop and leave the domain in paused
> > state.
> > ---
> >  src/qemu/qemu_driver.c  |    2 +-
> >  src/qemu/qemu_process.c |   25 ++++++++++++++++++-------
> >  src/qemu/qemu_process.h |    2 +-
> >  3 files changed, 20 insertions(+), 9 deletions(-)
> 
> ACK this looks reasonable.

Thanks, pushed.

Jirka

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


[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]