summaryrefslogtreecommitdiff
path: root/x86_64
diff options
context:
space:
mode:
authorDamien Zammit <damien@zamaudio.com>2023-08-16 01:44:50 +0000
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2023-08-22 23:13:55 +0200
commit786b27ba49a28e6597f5859e46213328c271d047 (patch)
treebc69bde49b0265aee29b0fc5c88626cf9303d68f /x86_64
parent8f6fb1be46ae4c56d85010f320372d61ceda034a (diff)
apic: Use cpuid to read the apic id for speed
Message-Id: <20230816014440.2322705-1-damien@zamaudio.com>
Diffstat (limited to 'x86_64')
-rw-r--r--x86_64/locore.S6
1 files changed, 3 insertions, 3 deletions
diff --git a/x86_64/locore.S b/x86_64/locore.S
index a330d56b..c75feb23 100644
--- a/x86_64/locore.S
+++ b/x86_64/locore.S
@@ -1171,7 +1171,7 @@ syscall_entry_2:
movq %rdx,R_CS(%rsp) /* fix cs */
movq %rbx,R_EFLAGS(%rsp) /* fix eflags */
- CPU_NUMBER(%edx)
+ CPU_NUMBER_NO_STACK(%edx)
TIME_TRAP_SENTRY
movq CX(EXT(kernel_stack),%rdx),%rbx
@@ -1371,7 +1371,7 @@ ENTRY(syscall64)
* save only the callee-preserved status according to the C ABI,
* plus RIP and EFLAGS for sysret
*/
- CPU_NUMBER(%r11)
+ CPU_NUMBER_NO_STACK(%r11)
movq CX(EXT(active_threads),%r11),%r11 /* point to current thread */
movq TH_PCB(%r11),%r11 /* point to pcb */
addq $ PCB_ISS,%r11 /* point to saved state */
@@ -1405,7 +1405,7 @@ ENTRY(syscall64)
mov %r10,%rcx /* fix arg3 location according to C ABI */
/* switch to kernel stack, then we can enable interrupts */
- CPU_NUMBER(%r11)
+ CPU_NUMBER_NO_STACK(%r11)
movq CX(EXT(kernel_stack),%r11),%rsp
sti