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] x86: use 'dom0_mem' to limit the number of pages

To: "David Vrabel" <david.vrabel@xxxxxxxxxx>, "Keir Fraser" <keir@xxxxxxx>
Subject: Re: [Xen-devel] [PATCH] x86: use 'dom0_mem' to limit the number of pages for dom0
From: "Jan Beulich" <JBeulich@xxxxxxxxxx>
Date: Tue, 23 Aug 2011 10:01:55 +0100
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx
Delivery-date: Tue, 23 Aug 2011 02:04:53 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <1ec6c392d40f37032b0c.1313431713@qabil>
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: <1ec6c392d40f37032b0c.1313431713@qabil>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
>>> On 15.08.11 at 20:08, David Vrabel <david.vrabel@xxxxxxxxxx> wrote:
> # HG changeset patch
> # User David Vrabel <david.vrabel@xxxxxxxxxx>
> # Date 1313404957 -3600
> # Node ID 1ec6c392d40f37032b0c845094c7ee6ba69740fd
> # Parent  8d6edc3d26d26931f3732a2008fb4818bc7bab2d
> x86: use 'dom0_mem' to limit the number of pages for dom0
> 
> Use the 'dom0_mem' command line option to set the maximum number of
> pages for dom0.  dom0 can use then use the XENMEM_maximum_reservation
> memory op to automatically find this limit and reduce the size of any
> page tables etc.
> 
> Signed-off-by: David Vrabel <david.vrabel@xxxxxxxxxx>
> 
> diff -r 8d6edc3d26d2 -r 1ec6c392d40f xen/arch/x86/domain_build.c
> --- a/xen/arch/x86/domain_build.c     Sat Aug 13 10:14:58 2011 +0100
> +++ b/xen/arch/x86/domain_build.c     Mon Aug 15 11:42:37 2011 +0100
> @@ -254,6 +254,8 @@ static unsigned long __init compute_dom0
>      }
>  #endif
>  
> +    d->max_pages = min(max_pages, avail);

Only having noticed this hypervisor side change in the patch set as it
now got applied to -unstable already, I have to object to this: It is
not memory hotplug compatible (i.e. Dom0, at least with a non-pvops
kernel, could have got ballooned up past the original limit once memory
got added to the system, whereas now you limit it to what was there
at boot time). If anything, this should be set to just max_pages, not
considering the amount of available memory at all.

Besides that the assignment needs to be saturating, as struct domain's
max_pages member is only "unsigned int", whereas the local variables
are all "unsigned long". So in the end this should really be an equivalent
of

    d->max_pages = min(max_pages, UINT_MAX);

Jan

> +
>      return nr_pages;
>  }
>  
> 
> _______________________________________________
> 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