]> xenbits.xensource.com Git - people/vhanquez/xen.git/commitdiff
x86: GDT reserved page should be a full page.
authorKeir Fraser <keir.fraser@citrix.com>
Thu, 6 Dec 2007 16:28:37 +0000 (16:28 +0000)
committerKeir Fraser <keir.fraser@citrix.com>
Thu, 6 Dec 2007 16:28:37 +0000 (16:28 +0000)
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen-unstable changeset:   16376:6c544894b8b2d2329ad1aa991ae25ebf8e1764d3
xen-unstable date:        Tue Nov 13 19:21:00 2007 +0000

xen/arch/x86/boot/x86_32.S
xen/arch/x86/boot/x86_64.S

index b876a7fd0907c711ad70e83cce606ecd0b9b223b..a48c3606110d51889ac4b48143e1607ae8a82bb6 100644 (file)
@@ -80,6 +80,16 @@ gdt_descr:
         .word   LAST_RESERVED_GDT_BYTE
         .long   gdt_table - FIRST_RESERVED_GDT_BYTE
 
+
+#ifdef CONFIG_X86_PAE
+        .align 32
+ENTRY(idle_pg_table)
+        .long sym_phys(idle_pg_table_l2) + 0*PAGE_SIZE + 0x01, 0
+        .long sym_phys(idle_pg_table_l2) + 1*PAGE_SIZE + 0x01, 0
+        .long sym_phys(idle_pg_table_l2) + 2*PAGE_SIZE + 0x01, 0
+        .long sym_phys(idle_pg_table_l2) + 3*PAGE_SIZE + 0x01, 0
+#endif
+
         .align PAGE_SIZE, 0
 /* NB. Rings != 0 get access up to MACH2PHYS_VIRT_END. This allows access to */
 /*     the machine->physical mapping table. Ring 0 can access all memory.    */
@@ -94,14 +104,4 @@ ENTRY(gdt_table)
         GUEST_DESC(0x00c0b200)       /* 0xe021 ring 1 3.xxGB data at 0x0 */
         GUEST_DESC(0x00c0fa00)       /* 0xe02b ring 3 3.xxGB code at 0x0 */
         GUEST_DESC(0x00c0f200)       /* 0xe033 ring 3 3.xxGB data at 0x0 */
-        .quad 0x0000000000000000     /* unused                           */
-        .fill 2*NR_CPUS,8,0          /* space for TSS and LDT per CPU    */
-
-#ifdef CONFIG_X86_PAE
-        .align 32
-ENTRY(idle_pg_table)
-        .long sym_phys(idle_pg_table_l2) + 0*PAGE_SIZE + 0x01, 0
-        .long sym_phys(idle_pg_table_l2) + 1*PAGE_SIZE + 0x01, 0
-        .long sym_phys(idle_pg_table_l2) + 2*PAGE_SIZE + 0x01, 0
-        .long sym_phys(idle_pg_table_l2) + 3*PAGE_SIZE + 0x01, 0
-#endif
+        .align PAGE_SIZE,0
index 46c34c170257e7a5593d192e16aa502fc6233b40..07756e90248ee9928e1e5a15fb3ffb54b75a8784 100644 (file)
@@ -105,8 +105,6 @@ ENTRY(gdt_table)
         .quad 0x00cff2000000ffff     /* 0xe02b ring 3 data                */
         .quad 0x00affa000000ffff     /* 0xe033 ring 3 code, 64-bit mode   */
         .quad 0x00cf9a000000ffff     /* 0xe038 ring 0 code, compatibility */
-        .org gdt_table - FIRST_RESERVED_GDT_BYTE + __TSS(0) * 8
-        .fill 4*NR_CPUS,8,0          /* space for TSS and LDT per CPU     */
 
         .align PAGE_SIZE, 0
 /* NB. Even rings != 0 get access to the full 4Gb, as only the            */
@@ -120,5 +118,4 @@ ENTRY(compat_gdt_table)
         .quad 0x00cffa000000ffff     /* 0xe02b ring 3 code, compatibility */
         .quad 0x00cff2000000ffff     /* 0xe033 ring 3 data                */
         .quad 0x00cf9a000000ffff     /* 0xe038 ring 0 code, compatibility */
-        .org compat_gdt_table - FIRST_RESERVED_GDT_BYTE + __TSS(0) * 8
-        .fill 4*NR_CPUS,8,0          /* space for TSS and LDT per CPU     */
+        .align PAGE_SIZE, 0