arch/x86: Unbreak SMP startup on x86_64
A last minute "cleanup" to the EFI startup path (on a system where I had SMP disabled) moved the load of the x86_cpuboot[0] entry into RBP into the main startup code, which is wrong because on auxiliary CPUs that's already set up by the 16/32 bit entry code to point to the OTHER entries. Put it back where it belongs. Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
This commit is contained in:
parent
85acfd2e27
commit
4d5e67ed13
1 changed files with 1 additions and 1 deletions
|
@ -148,7 +148,6 @@ enter_code64:
|
|||
movw %ax, %ss
|
||||
movw %ax, %fs
|
||||
|
||||
movq $x86_cpuboot, %rbp
|
||||
movw __x86_cpuboot_t_tr_OFFSET(%rbp), %ax
|
||||
ltr %ax
|
||||
|
||||
|
@ -224,6 +223,7 @@ __start64:
|
|||
outb %al, $0xA1
|
||||
|
||||
/* Far call into the Zephyr code segment */
|
||||
movq $x86_cpuboot, %rbp
|
||||
mov jmpdesc, %rax
|
||||
jmp *%rax
|
||||
jmpdesc:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue