WARNING - OLD ARCHIVES

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/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] long latency of domain shutdown

To: Jan Beulich <jbeulich@xxxxxxxxxx>
Subject: Re: [Xen-devel] long latency of domain shutdown
From: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Date: Thu, 08 May 2008 13:36:27 +0100
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Thu, 08 May 2008 05:37:03 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <48230F35.76E4.0078.0@xxxxxxxxxx>
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: AcixCCIZYHF19xz7Ed28OwAX8io7RQ==
Thread-topic: [Xen-devel] long latency of domain shutdown
User-agent: Microsoft-Entourage/11.4.0.080122
On 8/5/08 13:33, "Jan Beulich" <jbeulich@xxxxxxxxxx> wrote:

>> 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.

Because ultimately the reference(s) that are still being held on the page we
are unvalidating and calling free_lX_table() on will get dropped, due to the
fact we are breaking the circular chain and calling
free_lX_table()->put_page_and_type()->...

> 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).

I don't have a very clear plan, except that some kind of continuation
(basically encoding of how far we got) must be encoded in the page_info
structure. We should be able to find spare bits for a page which is in this
in-between state.

 -- Keir



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel