Fix AP trampoline stack setup
All checks were successful
All checks were successful
This commit is contained in:
@@ -254,13 +254,16 @@ _ArStartApplicationProcessor:
|
|||||||
movw %ax, %ds
|
movw %ax, %ds
|
||||||
movw %ax, %es
|
movw %ax, %es
|
||||||
movw %ax, %ss
|
movw %ax, %ss
|
||||||
movw $0x1000, %sp
|
|
||||||
|
|
||||||
/* Calculate absolute physical base address */
|
/* Calculate absolute physical base address */
|
||||||
xorl %ebx, %ebx
|
xorl %ebx, %ebx
|
||||||
movw %cs, %bx
|
movw %cs, %bx
|
||||||
shll $4, %ebx
|
shll $4, %ebx
|
||||||
|
|
||||||
|
/* Set up a temporary stack for the AP initialization */
|
||||||
|
movl %ebx, %esp
|
||||||
|
addl $0x1000, %esp
|
||||||
|
|
||||||
/* Load the temporary Global Descriptor Table */
|
/* Load the temporary Global Descriptor Table */
|
||||||
leal (ApTemporaryGdtDesc - _ArStartApplicationProcessor)(%ebx), %eax
|
leal (ApTemporaryGdtDesc - _ArStartApplicationProcessor)(%ebx), %eax
|
||||||
movl %eax, (ApTemporaryGdtBase - _ArStartApplicationProcessor)
|
movl %eax, (ApTemporaryGdtBase - _ArStartApplicationProcessor)
|
||||||
|
|||||||
Reference in New Issue
Block a user