[libvirt] [PATCH] Use PAUSED state for domains that are starting up
Jiri Denemark
jdenemar at redhat.com
Wed Mar 18 09:18:19 UTC 2015
On Wed, Mar 11, 2015 at 14:20:02 -0600, Jim Fehlig wrote:
> Jiri Denemark wrote:
> > When libvirt is starting a domain, it reports the state as SHUTOFF until
> > it's RUNNING. This is not ideal because domain startup may take a long
> > time (usually because of some configuration issues, firewalls blocking
> > access to network disks, etc.) and domain lists provided by libvirt look
> > awkward. One can see weird shutoff domains with IDs in a list of active
> > domains or even shutoff transient domains. In any case, it looks more
> > like a bug in libvirt than a normal state a domain goes through.
> >
>
> I recently noticed similar behavior in the libxl driver when starting
> large memory domains, which can take considerable time.
>
> > Signed-off-by: Jiri Denemark <jdenemar at redhat.com>
> > ---
> >
> > After going through all hypervisor drivers it seems none of them needs
> > to be updated. That is, this patch matches the one I sent as RFC for
> > design discussions.
> >
> > include/libvirt/libvirt-domain.h | 1 +
> > src/conf/domain_conf.c | 3 ++-
> > src/qemu/qemu_process.c | 22 ++++++++++++++--------
> > tools/virsh-domain-monitor.c | 3 ++-
> > 4 files changed, 19 insertions(+), 10 deletions(-)
> >
> > diff --git a/include/libvirt/libvirt-domain.h b/include/libvirt/libvirt-domain.h
> > index 9487b80..d5c148b 100644
> > --- a/include/libvirt/libvirt-domain.h
> > +++ b/include/libvirt/libvirt-domain.h
> > @@ -116,6 +116,7 @@ typedef enum {
> > VIR_DOMAIN_PAUSED_SHUTTING_DOWN = 8, /* paused during shutdown process */
> > VIR_DOMAIN_PAUSED_SNAPSHOT = 9, /* paused while creating a snapshot */
> > VIR_DOMAIN_PAUSED_CRASHED = 10, /* paused due to a guest crash */
> > + VIR_DOMAIN_PAUSED_STARTING_UP = 11, /* the domain is being started */
> >
>
> Cool. I'll use this in libxlDomainStart() in the libxl driver.
Hmm, I looked at all drivers including libxl and didn't find a good
place put this change. I guess it's because I'm totally unfamiliar with
libxl (driver).
> I'm no expert in the qemu driver code, but this looks sane to me. ACK.
OK, given the previous design ACK from Daniel, I pushed this patch.
Jirka
More information about the libvir-list
mailing list