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] Linux: removal of contiguous_bitmap broke kexec

To: Jan Beulich <jbeulich@xxxxxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: Re: [Xen-devel] Linux: removal of contiguous_bitmap broke kexec
From: Keir Fraser <keir.fraser@xxxxxxxxxxxxx>
Date: Tue, 25 Nov 2008 11:14:13 +0000
Cc:
Delivery-date: Tue, 25 Nov 2008 03:14:39 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <492BE9E6.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/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AclO7vI8MKJhNrriEd2gdwAX8io7RQ==
Thread-topic: [Xen-devel] Linux: removal of contiguous_bitmap broke kexec
User-agent: Microsoft-Entourage/11.4.0.080122
(1) is good for now, and I prefer it to (2). Of course it would be nice to
have the ability to exchange the low-memory pages for ordinary pages once
kexec is done with them, but it can be done as a separate patch. I'll do (1)
right now, since it is trivial.

 -- Keir

On 25/11/08 11:04, "Jan Beulich" <jbeulich@xxxxxxxxxx> wrote:

> Since kexec uses xen_destroy_contiguous_region() on memory it is about
> to free, but passed this through xen_limit_pages_to_max_mfn() only, the
> contiguous_bitmap check in the old code prevented any action to be taken
> on such regions. This could therefore be fixed in at least three different
> ways:
> 
> 1) Since the call to xen_destroy_contiguous_region() really was pointless
> before, we could just eliminate that from kernel/kexec.c.
> 
> 2) xen_destroy_contiguous_region() could check the region it is passed
> and bail out if it turns out not to be contiguous.
> 
> 3) We could track which regions were actually acted upon by
> xen_limit_pages_to_max_mfn() (through PageForeign logic) and attempt
> to undo the limitation in the destructor (and at once again eliminate the
> [mismatched] call to xen_destroy_contiguous_region()). Since this case
> is not performance critical, there shouldn't be an issue with not batching
> these. And a check of the kexec code indicates it doesn't use the index
> member of struct page.
> 
> Opinions appreciated. Thanks,
> Jan
> 
> 
> _______________________________________________
> 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

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