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] [PATCH 2/3] xen: allow extra memory to be two regions

To: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH 2/3] xen: allow extra memory to be two regions
From: David Vrabel <david.vrabel@xxxxxxxxxx>
Date: Tue, 16 Aug 2011 15:33:19 +0100
Cc: "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Tue, 16 Aug 2011 07:34:17 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <20110816134857.GC30261@xxxxxxxxxxxx>
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>
References: <1313488838-28809-1-git-send-email-david.vrabel@xxxxxxxxxx> <1313488838-28809-3-git-send-email-david.vrabel@xxxxxxxxxx> <20110816134857.GC30261@xxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.18) Gecko/20110617 Thunderbird/3.1.11
On 16/08/11 14:48, Konrad Rzeszutek Wilk wrote:
> On Tue, Aug 16, 2011 at 11:00:37AM +0100, David Vrabel wrote:
>> Allow the extra memory (used by the balloon driver) to be in two
>> regions (typically low and high memory).  This allows the balloon
>> driver to increase the number of available low pages (if the initial
>> number if pages is small).
>>
>> As a side effect, the algorithm for building the e820 memory map is
>> simpler and more obviously correct as the map supplied by the
>> hypervisor is (almost) used as is.
> 
> Hm, which is not always good. The setting of 'E820_RESERVED' and 
> 'E820_UNUSABLE',
> and realigning of start of balloon space at 4GB (if necessary) changes
> need to be preserved. You can look up the why if you run 'git annotate'
> and look at those lines - we had lots of time getting those right.

My understanding of the history is that the problems were caused by not
paying attention to the reserved regions reported in the machine memory
map.  This proposed algorithm is careful to only alter RAM regions --
all reserved regions and gaps are preserved as-is.  I should add some
comments explaining this.

For example, should a BIOS reserve memory above 4 GiB then the current
code will place the balloon memory over the top of it but the proposed
code will not.

> You also need to provide the virgin copy of the E820 to the xen_set_identity
> and not use the same version that is modified - which with the above setting
> won't work.

Because we don't alter any reserved regions the resulting map is fine
for this.

> I am curious - with the patch to the hypervisor - and with just a newly
> implemented xen_get_max_pages() code path added to query the new
> truncated amount of how many pages we need - wont that solve the problem?

I'll address this in another email.

David

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