aboutsummaryrefslogtreecommitdiffstats
path: root/xen/arch/x86/boot/x86_64.S
diff options
context:
space:
mode:
authorkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>2005-05-19 12:36:18 +0000
committerkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>2005-05-19 12:36:18 +0000
commitc17b1a485fa7ed44d5f6e519d567f52ae7fc5200 (patch)
treea107b10263115bb7e8144044cbf147bc29c07cb7 /xen/arch/x86/boot/x86_64.S
parent418babe999dbd4c5091efdb987fd5b1c47c8177a (diff)
downloadxen-c17b1a485fa7ed44d5f6e519d567f52ae7fc5200.tar.gz
xen-c17b1a485fa7ed44d5f6e519d567f52ae7fc5200.tar.bz2
xen-c17b1a485fa7ed44d5f6e519d567f52ae7fc5200.zip
bitkeeper revision 1.1462 (428c884242SexXIVbHWO-OkTk2Q95w)
Clean up, fix, and rationalise RAM mapping in Xen. First, x86/64 must take care to map only registered RAM areas and not adjacent I/O holes -- otherwise a cpu may cache I/O space and cause coherency conflicts on the memory bus. Second, map_pages() and the memguard mechanisms are no longer sub-arch specific (moved to arch/x86/mm.c:map_pages_to_xen()). Signed-off-by: Keir Fraser <keir@xensource.com>
Diffstat (limited to 'xen/arch/x86/boot/x86_64.S')
-rw-r--r--xen/arch/x86/boot/x86_64.S8
1 files changed, 4 insertions, 4 deletions
diff --git a/xen/arch/x86/boot/x86_64.S b/xen/arch/x86/boot/x86_64.S
index 5ebb24d647..4be1c0684e 100644
--- a/xen/arch/x86/boot/x86_64.S
+++ b/xen/arch/x86/boot/x86_64.S
@@ -230,7 +230,7 @@ ENTRY(gdt_table)
.quad 0x0000000000000000 /* unused */
.fill 4*NR_CPUS,8,0 /* space for TSS and LDT per CPU */
-/* Initial PML4 -- level-4 page table */
+/* Initial PML4 -- level-4 page table. */
.org 0x2000
ENTRY(idle_pg_table)
ENTRY(idle_pg_table_4)
@@ -238,15 +238,15 @@ ENTRY(idle_pg_table_4)
.fill 261,8,0
.quad idle_pg_table_l3 - __PAGE_OFFSET + 7 # PML4[262]
-/* Initial PDP -- level-3 page table */
+/* Initial PDP -- level-3 page table. */
.org 0x3000
ENTRY(idle_pg_table_l3)
.quad idle_pg_table_l2 - __PAGE_OFFSET + 7
-/* Initial PDE -- level-2 page table. */
+/* Initial PDE -- level-2 page table. Maps first 64MB physical memory. */
.org 0x4000
ENTRY(idle_pg_table_l2)
- .macro identmap from=0, count=512
+ .macro identmap from=0, count=32
.if \count-1
identmap "(\from+0)","(\count/2)"
identmap "(\from+(0x200000*(\count/2)))","(\count/2)"