From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Jan Beulich" Subject: Re: long latency of domain shutdown Date: Thu, 08 May 2008 13:33:25 +0100 Message-ID: <48230F35.76E4.0078.0@novell.com> References: <4822FC70.76E4.0078.0@novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Keir Fraser Cc: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org >>> Keir Fraser 08.05.08 14:11 >>> >The approach looks plausible. I think in its current form it will leave >zombie L2/L3 pages hanging around and the domain will never actually >properly die (e.g., still will be visible with the 'q' key). Because >although you do get around to doing free_lX_table(), the type count and = ref >count of the L2/L3 pages will not drop to zero because the dead L3/L4 = page >never actually dropped its references properly. Hmm, indeed, I should look for this after the next run. >In actuality, since we know that we never have 'cross-domain' pagetable = type >references, we should actually be able to zap pagetable reference counts = to >zero. The only reason we don't do that right now is really because it >provides good debugging info to see whether a domain's refcounts have got >screwed up. But that would not prevent us doing something faster for = NDEBUG >builds, at least. > >Does that make sense? Yes, except for me not immediately seeing why this is then not also a problem for the current circular reference handling. But really, rather than introducing (and fixing) the hack here I'd much prefer a generic solution to the problem, and you didn't say a word on the thoughts I had on that (but in a mail a couple of days ago you indicated you might get around doing something in that area yourself, so I half way implied you may have a mechanism in mind already). Jan