On Mon, 26 Jul 2010, Ian Campbell wrote:
> On Mon, 2010-07-26 at 15:32 +0100, Stefano Stabellini wrote:
> > > + ret = libxl_event_get_domain_death_info(&ctx, domid,
> > > &event, &info);
> > > +
> > > + if (ret < 0) continue;
> > [....]
> > > + if (info.shutdown_reason != SHUTDOWN_suspend) {
> > > LOG("Domain %d needs to be clean: destroying the
> > > domain", domid);
> > > libxl_domain_destroy(&ctx, domid, 0);
> > > - if (info.shutdown && info.shutdown_reason ==
> > > SHUTDOWN_reboot) {
> > > + if (info.shutdown_reason == SHUTDOWN_reboot) {
> >
> > Isn't still possible to get here and have info.shutdown == 0 (and even
> > info.dying == 0, after reading the fourth patch)?
> > If so, the previous test is probably clearer.
>
> Umm...
>
> I think libxl_event_get_domain_death_info should have returned
> ERROR_INVAL in that case and we'd have take the earlier if (ret < 0)
> continue.
I think we should at least write in a comment in libxl.h that
shutdown_reason is valid when (shutdown || dying) and that when
libxl_event_get_domain_death_info returns 1 shutdown_reason is always
set.
Also I still like the old test more, just for clarity.
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|