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

Re: [Xen-devel] Domains not being destroyed properly

On Tue, 2011-06-21 at 17:04 +0100, Anthony Wright wrote:
> On 21/06/2011 16:44, Ian Campbell wrote:
> > On Tue, 2011-06-21 at 15:52 +0100, Anthony Wright wrote:
> >> Ok, to be clear what I did....
> >> xl create -e domain-details
> >> xl shutdown <domain>
> >> (End up with a domain called (null) in state --ps-d according to xl list
> >> kill the qemu-dm process associated with the domain
> >> the domain goes away
> >>
> >> note that I didn't need to do an 'xl destroy' the kill of qemu-dm was
> >> sufficient
> >>
> >> If I do....
> >>
> >> xl create -e domain-details
> >> xl destroy <domain>
> >> the domain goes away
> > The difference is that shutdown is only a request to the guest to shut
> > itself down, while destroy is the big hammer which kills the guest with
> > prejudice and tidies up any detritus (or at least that is the intention
> > IIRC).
> >
> > I suspect that you will probably find that only the hypervisor parts of
> > the domain are being cleaned up by killing qemu -- e.g. the xenstore
> > entries and some other stuff (e.g. libxl user data) are not being
> > cleaned up.
> >
> > If you do:
> > xl create -e domain-details
> > xl shutdown <domain>
> > xl destroy <domain>
> >
> > Does everything get cleaned up?
> If I do:
> xl create -e domain-details
> xl shutdown <domain>
> [ Wait for the domain to go to state --ps-d ]
> xl destroy <domain>
> The 'xl destroy' has no effect. The only thing that has an effect is
> killing the qemu-dm processes which destroys the domain even without
> running 'xl destroy'.

This sounds like a bug in "xl destroy" to me.

> > If you don't want to run an xl daemon for each domain (although I agree
> > with IanJ that they should be pretty cheap) I think a new xl sub-command
> > which caused it to behave as a single daemon reaping domains would be a
> > fine thing to have in our toolkit.
> That would be really helpful, something that would inform me when a
> domain died supplying it's domain id & domain name - the name is really
> important because that's my reference, and I can't convert from an
> domain id to a domain name after the domain has died.

In this case I think you can do so before the call to "xl destroy" since
that is when all the xenstore gubbins needed to do the translation is
called. In the past xend probably got their before you could and nuked
it all.

BTW, I was trying to imply that we would accept a patch which
implemented this new subcommand ;-)

>  I used to have a
> script that sat in /etc/xen/scripts/domain-destroyed which was called on
> domain death with the dom-id and dom-name as arguments.

Including some sort of callout mechanism on shutdown but before destroy
would be a reasonable feature for a daemon which did this kind of global
babysitting to have.


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.