| version 1.95, 2011/03/18 15:18:16 |
version 1.96, 2012/02/24 08:06:07 |
| Line 238 _C_LABEL(tablesize): .long 0 |
|
| Line 238 _C_LABEL(tablesize): .long 0 |
|
| |
|
| .space 512 |
.space 512 |
| tmpstk: |
tmpstk: |
| |
#ifdef XEN |
| |
.align PAGE_SIZE, 0x0 # Align on page boundary |
| |
_C_LABEL(tmpgdt): |
| |
.space PAGE_SIZE # Xen expects a page |
| |
#endif /* XEN */ |
| |
.globl tmpgdt |
| #ifndef XEN |
#ifndef XEN |
| #define _RELOC(x) ((x) - KERNBASE) |
#define _RELOC(x) ((x) - KERNBASE) |
| #else |
#else |
|
|
| cpuid |
cpuid |
| movl %eax,RELOC(cpuid_level) |
movl %eax,RELOC(cpuid_level) |
| |
|
| |
/* |
| |
* Use a temp page. We'll re- add it to uvm(9) once we're |
| |
* done using it. |
| |
*/ |
| |
movl $RELOC(tmpgdt), %eax |
| |
pushl %eax # start of temporary gdt |
| |
call _C_LABEL(initgdt) |
| |
addl $4,%esp |
| |
|
| call xen_pmap_bootstrap |
call xen_pmap_bootstrap |
| |
|
| /* |
/* |