]> git.karo-electronics.de Git - karo-tx-linux.git/commit
xen/setup: Work properly with 'dom0_mem=X' or with not dom0_mem.
authorKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Thu, 5 Apr 2012 21:17:54 +0000 (17:17 -0400)
committerKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Thu, 26 Apr 2012 20:59:57 +0000 (16:59 -0400)
commit8999179cf1fe59e5f1ffa3274f26505b6a639e64
tree9299fb21b53a2e85c8ef65db4e1b1ef394bcb6e1
parent324cd69aa1aefd24f0cd94610e3a607e9faece53
xen/setup: Work properly with 'dom0_mem=X' or with not dom0_mem.

We ignored the X value and ended up populating up to
max(MAX_DOMAIN_PAGES, last E820_RAM entry).

This fixes it by figuring out how many RAM nr_pages the
hypervisor wanted to provide to us and cap the populate
hypercalls up to that.

The end result is (on a 8GB box):

dom0_mem=1G
-Memory: 610884k/9435136k available (5817k kernel code, 1136060k absent, 7688192k reserved, 2899k data, 696k init)
+Memory: 724184k/1053064k available (5817k kernel code, 4552k absent, 324328k reserved, 2899k data, 696k init)

no dom0_mem
-Memory: 7619036k/9435136k available (5817k kernel code, 1136060k absent, 680040k reserved, 2899k data, 696k init)
+Memory: 7621460k/9208688k available (5817k kernel code, 1136060k absent, 451168k reserved, 2899k data, 696k init)

[v1: Details added]
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
arch/x86/xen/setup.c