This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


RE: [Xen-devel] Zombie domains

To: "David Lie" <lie@xxxxxxxxxxxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: RE: [Xen-devel] Zombie domains
From: "Ian Pratt" <m+Ian.Pratt@xxxxxxxxxxxx>
Date: Thu, 20 Jul 2006 01:59:43 +0100
Delivery-date: Wed, 19 Jul 2006 18:00:12 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: Acarg1qy0jcyvlKJRoq4VvxPXGpIXgAE/jbA
Thread-topic: [Xen-devel] Zombie domains
> I'm using the grant table to map a shared frame between two domains.
> Domain 1 shares the frame, and Domain 2 maps it into it's address
> I then make sure Domain 2 unmaps the frame, and releases all event
> channels, etc... before shutting down.  Domain 2 always remains as a
> zombie though when I do xm list.  If I dump the domain info in the Xen
> console, I get this information for the zombie domain:
> (XEN) General information for domain 12:
> (XEN)     flags=6 refcnt=1 nr_pages=0 xenheap_pages=0 dirty_cpus={}
> (XEN)     handle=f4a55907-26db-d7c3-f6a7-392637013289
> (XEN) Rangesets belonging to domain 12:
> (XEN)     Interrupts { }
> (XEN)     I/O Memory { }
> (XEN)     I/O Ports  { }
> (XEN) Memory pages belonging to domain 12:
> (XEN) VCPU information and callbacks for domain 12:
> (XEN)     VCPU0: CPU0 [has=F] flags=10 upcall_pend = 01, upcall_mask =
> 00 dirty}(XEN)     Notifying guest (virq 1, port 0, stat 0/0/-1)

The usual region for zombie domains is other domains having its memory
mapped, but not in this case: nr_pages=0

> Unfortunately, these fields do not mean very much to me.  What does
> upcall_pend mean?  

There's an event pending for the domain. Not a big deal.

> Sometimes this field is 01, sometimes it's 00.  What
> about refcnt?  

Something has a reference to the domain structure, hence preventing it
from being freed. This must be a xen bug. Your OS is likely provoking an
error path that is missing a 'put'.   

Have you tried this with latest -unstable?


Xen-devel mailing list

<Prev in Thread] Current Thread [Next in Thread>