diff options
author | Jan Beulich <jbeulich@suse.com> | 2012-09-11 16:03:38 +0200 |
---|---|---|
committer | Jan Beulich <jbeulich@suse.com> | 2012-09-11 16:03:38 +0200 |
commit | a495404575be41b26d86464b1ecc33c4a0d4b90f (patch) | |
tree | 5e5a204ec2ab57ee690eb90f4e07f7573df111f5 /xen/arch/x86/boot/x86_64.S | |
parent | e46ea4d44dc0929d9e15dcde5c13b569278970d2 (diff) | |
download | xen-a495404575be41b26d86464b1ecc33c4a0d4b90f.tar.gz xen-a495404575be41b26d86464b1ecc33c4a0d4b90f.tar.bz2 xen-a495404575be41b26d86464b1ecc33c4a0d4b90f.zip |
x86: construct static part of 1:1 mapping at build time
... rather than at boot time, removing unnecessary redundancy between
EFI and legacy boot code.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'xen/arch/x86/boot/x86_64.S')
-rw-r--r-- | xen/arch/x86/boot/x86_64.S | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/xen/arch/x86/boot/x86_64.S b/xen/arch/x86/boot/x86_64.S index 3c0958bcf2..8c7bb6ec43 100644 --- a/xen/arch/x86/boot/x86_64.S +++ b/xen/arch/x86/boot/x86_64.S @@ -127,3 +127,15 @@ ENTRY(boot_cpu_compat_gdt_table) .fill (PER_CPU_GDT_ENTRY - __HYPERVISOR_CS32 / 8 - 1), 8, 0 .quad 0x0000910000000000 /* per-CPU entry (limit == cpu) */ .align PAGE_SIZE, 0 + +/* Mapping of first 16 megabytes of memory. */ + .globl l2_identmap +l2_identmap: + .quad 0 + pfn = 0 + .rept 7 + pfn = pfn + (1 << PAGETABLE_ORDER) + .quad (pfn << PAGE_SHIFT) | PAGE_HYPERVISOR | _PAGE_PSE + .endr + .fill 4 * L2_PAGETABLE_ENTRIES - 8, 8, 0 + .size l2_identmap, . - l2_identmap |