> > This is not actually true, right? There are several places in the
> > code that blindly use the return value of dom_get(), assuming that it
> > is actually anything but None. The closest example is in the update()
> > function, several lines down:
> >
> > self.info = info or dom_get(self.domid)
>
> Ah, my bad. I misinterpreted this as a boolean expression at first
> glance. Note, dom_get was already returning None when the domain
> wasn't found, but another exception was preventing it from getting
> that far. We're just moving the exceptions around, now.
Well really it is a boolean expression but it follows the Perl/Python
convention of using short-circuit evaluation of booleans for things like
control flow. It's fine once you've run into it. My favourite is the Python
idiom for the ternary conditional:
a = (b and c) or d)
Which actually means (assuming c isn't false, or equivalent):
a = b ? c : d;
:-D
Cheers,
Mark
> > self.memory = self.info['mem_kb'] / 1024
> >
> > Clearly, we need to decide what behavior dom_get() is expected to
> > have. Do we expect it to return None if the domid is not found, or do
> > we expect the domain we're asking about to always be present
> > (i.e. throw an exception if not)?
> >
> > If nobody has strong feelings either way, I'll work up a patch to fix
> > it.
>
> My original fix was to allow dom_get to raise the exception, and I
> just ignored it in delete(), since we are not expecting to find the
> domain in the first place there. On second thought, this was
> probably a better approach, since the other uses of dom_get would be
> better off if they got exceptions instead of None.
>
> robert
>
> > --
> > Dan Smith
> > IBM Linux Technology Center
> > Open Hypervisor Team
> > email: danms@xxxxxxxxxx
> >
> >
> > _______________________________________________
> > Xen-devel mailing list
> > Xen-devel@xxxxxxxxxxxxxxxxxxx
> > http://lists.xensource.com/xen-devel
>
> --
> Robert Read
> robert@xxxxxxxxxxxxx
>
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|