]> xenbits.xensource.com Git - qemu-xen-4.5-testing.git/commitdiff
[ia64] Fix memory size calculation on VT-i over 3GB memory
authorIan Jackson <ian.jackson@eu.citrix.com>
Thu, 9 Oct 2008 13:46:16 +0000 (14:46 +0100)
committerIan Jackson <Ian.Jackson@eu.citrix.com>
Thu, 9 Oct 2008 13:46:16 +0000 (14:46 +0100)
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 <xiantao.zhang@intel.com>
Signed-off-by: KUWAMURA Shin'ya <kuwa@jp.fujitsu.com>
vl.c

diff --git a/vl.c b/vl.c
index 120b607386abb3adef81e2ebb31e88db7ef09fc4..b97435f1f66bd73b28403b339ab64ce49741a6bf 100644 (file)
--- a/vl.c
+++ b/vl.c
@@ -8670,6 +8670,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;