On Wed, Mar 31, 2010 at 03:44:17PM +0200, Daniel Veillard wrote:
On Wed, Mar 31, 2010 at 01:14:13PM +0100, Daniel P. Berrange wrote:
> When a watchdog/IO error occurs, one of the possible actions that
> QEMU might take is to pause the guest. In this scenario libvirt
> needs to update its internal state for the VM, and emit a
> lifecycle event:
>
> VIR_DOMAIN_EVENT_SUSPENDED
>
> with a detail being one of:
>
> VIR_DOMAIN_EVENT_SUSPENDED_IOERROR
> VIR_DOMAIN_EVENT_SUSPENDED_WATCHDOG
>
> To future proof against possible QEMU support for multiple monitor
> consoles, this patch also hooks into the 'STOPPED' event in QEMU
> and emits a generic VIR_DOMAIN_EVENT_SUSPENDED_PAUSED event
you mean if a command was emitted on one console stopping the guest
so that the event is captured on other consoles. I wonder what's the
limits here, it sounds impossible to garantee a coherent view in general
in case of access on an extra console outside of libvirtd control.
So you plan on doing some kind of best-effort to cover this new use case ?
It is currently impossible to cope with this in general, but over time
QEMU needs to provide events for any machine config changes so that apps
can track them. The STOPPED state is a fairly important & easy one to
deal with though.
Daniel
--
|: Red Hat, Engineering, London -o-
http://people.redhat.com/berrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org -o-
http://deltacloud.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|