|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 13/13] xen: allow more than 512 GB of RAM for 64 bit pv-domains
On 02/18/2015 10:21 AM, Paul Bolle wrote: On Wed, 2015-02-18 at 07:52 +0100, Juergen Gross wrote:64 bit pv-domains under Xen are limited to 512 GB of RAM today. The main reason has been the 3 level p2m tree, which was replaced by the virtual mapped linear p2m list. Parallel to the p2m list which is being used by the kernel itself there is a 3 level mfn tree for usage by the Xen tools and eventually for crash dump analysis. For this tree the linear p2m list can serve as a replacement, too. As the kernel can't know whether the tools are capable of dealing with the p2m list instead of the mfn tree, the limit of 512 GB can't be dropped in all cases. This patch replaces the hard limit by a kernel parameter which tells the kernel to obey the 512 GB limit or not. The default is selected by a configuration parameter which specifies whether the 512 GB limit should be active per default for dom0 (only crash dump analysis is affected) and/or for domUs (additionally domain save/restore/migration are affected). Memory above the domain limit is returned to the hypervisor instead of being identity mapped, which was wrong anyways. The kernel configuration parameter to specify the maximum size of a domain can be deleted, as it is not relevant any more. Signed-off-by: Juergen Gross <jgross@xxxxxxxx> --- Documentation/kernel-parameters.txt | 7 ++++ arch/x86/include/asm/xen/page.h | 4 --- arch/x86/xen/Kconfig | 31 +++++++++++----- arch/x86/xen/p2m.c | 10 +++--- arch/x86/xen/setup.c | 72 ++++++++++++++++++++++++++++++------- 5 files changed, 93 insertions(+), 31 deletions(-)[...] The complete directory is made only if CONFIG_XEN is set. +choice + prompt "Support pv-domains larger than 512GB" + default XEN_512GB_NONE + help + Support paravirtualized domains with more than 512GB of RAM. + + The Xen tools and crash dump analysis tools might not support + pv-domains with more than 512 GB of RAM. This option controls the + default setting of the kernel to use only up to 512 GB or more. + It is always possible to change the default via specifying the + boot parameter "xen_512gb_limit". + + config XEN_512GB_NONE + bool "neither dom0 nor domUs can be larger than 512GB" + config XEN_512GB_DOM0 + bool "dom0 can be larger than 512GB, domUs not" + config XEN_512GB_DOMU + bool "domUs can be larger than 512GB, dom0 not" + config XEN_512GB_ALL + bool "dom0 and domUs can be larger than 512GB" +endchoiceSo there are actually two independent limits, configured through a choice with four entries. Would using just two separate Kconfig symbols (XEN_512GB_DOM0 and XEN_512GB_DOMU) without a choice wrapper also work? Yes. Because ... Yes. That's a matter of taste, I think.
Yes. A kernel is running only either as Dom0 or as domU at a given time. Having two parameters here would be nonsense, as only one could apply. And being able to configure both limits separately does make sense, of course. Juergen _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |