From d07cb88f24d021751f07ec7464d81ecb2c2a3bf8 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Thu, 9 Oct 2008 14:46:16 +0100 Subject: [PATCH] [ia64] Fix memory size calculation on VT-i over 3GB memory VT-i domains have two memory holes: VGA I/O (under 1MB) and MMIO (3GB-4GB). This patch calculates the correct memory size with them. This is based on xen-unstable 10936:a0b3cf802d99. Original patch by Zhang xiantao Signed-off-by: KUWAMURA Shin'ya (cherry picked from commit 6bb40e81b938beb53eb4102cdfae03dd79edbf13) --- vl.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/vl.c b/vl.c index e50a02d4..2f567410 100644 --- a/vl.c +++ b/vl.c @@ -8669,6 +8669,14 @@ int main(int argc, char **argv) } #endif + +#if defined (__ia64__) + if (ram_size > VGA_IO_START) + ram_size += VGA_IO_SIZE; /* skip VGA I/O hole */ + if (ram_size > MMIO_START) + ram_size += 1 * MEM_G; /* skip 3G-4G MMIO, LEGACY_IO_SPACE etc. */ +#endif + /* init the memory */ phys_ram_size = machine->ram_require & ~RAMSIZE_FIXED; -- 2.39.5