]> www.infradead.org Git - users/jedix/linux-maple.git/commit
xen: allow more than 512 GB of RAM for 64 bit pv-domains
authorJuergen Gross <jgross@suse.com>
Fri, 17 Jul 2015 04:51:36 +0000 (06:51 +0200)
committerChuck Anderson <chuck.anderson@oracle.com>
Fri, 5 Feb 2016 11:43:28 +0000 (03:43 -0800)
commit9092661a1c82114232a6c882348b6cb9ef4843ed
tree7c7a4d1beb1df516093dbd58442b787b9f5e0237
parent46c58e7761a9d60ab5d27896df262ba90c0f7f49
xen: allow more than 512 GB of RAM for 64 bit pv-domains

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 domUs (domain save/restore/migration
and crash dump analysis are affected).

Memory above the domain limit is returned to the hypervisor instead of
being identity mapped, which was wrong anyway.

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@suse.com>
Acked-by: Konrad Rzeszutek Wilk <Konrad.wilk@oracle.com>
Signed-off-by: David Vrabel <david.vrabel@citrix.com>
(cherry picked from commit c70727a5bc18a5a233fddc6056d1de9144d7a293)
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
(cherry picked from commit 956b08bfc7fadaec4f04578165b867a974267c97)
Documentation/kernel-parameters.txt
arch/x86/include/asm/xen/page.h
arch/x86/xen/Kconfig
arch/x86/xen/p2m.c
arch/x86/xen/setup.c