aboutsummaryrefslogtreecommitdiffstats
path: root/xen/arch/x86/mm.c
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2013-01-23 14:04:34 +0100
committerJan Beulich <jbeulich@suse.com>2013-01-23 14:04:34 +0100
commita8d2b06db7826063df9d04be9d6f928bf2189bd0 (patch)
tree4c0e6f548c1d54775b69d60e6d9c5f0b550a505e /xen/arch/x86/mm.c
parenta2fd3bc4d44f1fca34fcfcff843b1eb940dc2c9a (diff)
downloadxen-a8d2b06db7826063df9d04be9d6f928bf2189bd0.tar.gz
xen-a8d2b06db7826063df9d04be9d6f928bf2189bd0.tar.bz2
xen-a8d2b06db7826063df9d04be9d6f928bf2189bd0.zip
x86: extend frame table virtual space
... to allow frames for up to 16Tb. At the same time, add the super page frame table coordinates to the comment describing the address space layout. Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'xen/arch/x86/mm.c')
-rw-r--r--xen/arch/x86/mm.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
index 9c289e4221..e043ba10b3 100644
--- a/xen/arch/x86/mm.c
+++ b/xen/arch/x86/mm.c
@@ -146,8 +146,7 @@ unsigned long max_page;
unsigned long total_pages;
unsigned long __read_mostly pdx_group_valid[BITS_TO_LONGS(
- (FRAMETABLE_SIZE / sizeof(*frame_table) + PDX_GROUP_COUNT - 1)
- / PDX_GROUP_COUNT)] = { [0] = 1 };
+ (FRAMETABLE_NR + PDX_GROUP_COUNT - 1) / PDX_GROUP_COUNT)] = { [0] = 1 };
bool_t __read_mostly machine_to_phys_mapping_valid = 0;
@@ -218,7 +217,7 @@ static void __init init_spagetable(void)
BUILD_BUG_ON(XEN_VIRT_END > SPAGETABLE_VIRT_START);
init_frametable_chunk(spage_table,
- mem_hotplug ? (void *)SPAGETABLE_VIRT_END
+ mem_hotplug ? spage_table + SPAGETABLE_NR
: pdx_to_spage(max_pdx - 1) + 1);
}