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] Add 2M page support to Xen balloon driver

To: Jan Beulich <JBeulich@xxxxxxxxxx>
Subject: Re: [Xen-devel] [PATCH] Add 2M page support to Xen balloon driver
From: Jeremy Fitzhardinge <jeremy@xxxxxxxx>
Date: Wed, 17 Jun 2009 09:40:36 -0700
Cc: Dave McCracken <dcm@xxxxxxxx>, Xen Developers List <xen-devel@xxxxxxxxxxxxxxxxxxx>
Delivery-date: Wed, 17 Jun 2009 09:41:25 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <4A38C87D020000780000632D@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/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: <200906161053.30707.dcm@xxxxxxxx> <4A38C87D020000780000632D@xxxxxxxxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1b3pre) Gecko/20090513 Fedora/3.0-2.3.beta2.fc11 Thunderbird/3.0b2
On 06/17/09 01:42, Jan Beulich wrote:
This patch adds a kernel command line option "balloon_hugepages" that, when
enabled, will make the balloon driver work in 2M pages (ie hugepages).  This
will work in conjunction with the "superpages" domain creation option so once
a domain is created with 2M contiguous pages it will continue to free and re-
allocate at the 2M page size.

Note that the current hypervisor code does not allow 2M page allocations for
all guest domains.  Keir has agreed to change the hypervisor to allow them,
but for now "balloon_hugepages" should only be specified on hypervisors that
have this change.

How would that work with future (currently only some piece of dead code in
xen-netfront.c does so) code altering the p2m map outside of the balloon
driver? Shouldn't you at least verify the large page you allocated is indeed
machine-contiguous?

I have some experimental patches to move memory around at boot time to avoid e820 holes. It would need to take care with 2M pages. The dma code also updates the p2m map when it makes a page range contiguous.

Also, after reasonably long uptime and on a reasonably loaded machine -
how good are the chances you would be able to allocate a large page
through alloc_pages() in the first place?

I think you lose the ability to allocate 2M pages pretty quickly; probably only a few mins on a moderately loaded server (depends on total memory size, of course). On the other hand, the VM can now relocate user and pagecache pages to try and satisfy large memory allocations, so maybe it can manage it for longer or even indefinitely.

    J

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

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