From ab37adbacf0f33845804c788b39680cd754752a8 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Sat, 22 Nov 2025 09:31:21 -0500 Subject: fix: kernel: Important kernel fixes for SMP. Adding 'NeKernel' process as well. Signed-off-by: Amlal El Mahrouss --- dev/kernel/HALKit/AMD64/HalInterruptAPI.asm | 36 ++++++++++++++--------------- 1 file changed, 18 insertions(+), 18 deletions(-) (limited to 'dev/kernel/HALKit/AMD64/HalInterruptAPI.asm') diff --git a/dev/kernel/HALKit/AMD64/HalInterruptAPI.asm b/dev/kernel/HALKit/AMD64/HalInterruptAPI.asm index 3b3ad849..c761684e 100644 --- a/dev/kernel/HALKit/AMD64/HalInterruptAPI.asm +++ b/dev/kernel/HALKit/AMD64/HalInterruptAPI.asm @@ -16,7 +16,7 @@ %macro IntExp 1 global __NE_INT_%1 __NE_INT_%1: - cld + cli std @@ -26,7 +26,7 @@ __NE_INT_%1: %macro IntNormal 1 global __NE_INT_%1 __NE_INT_%1: - cld + cli std @@ -52,7 +52,7 @@ extern idt_handle_math section .text __NE_INT_0: - cld + cli push rcx call idt_handle_generic pop rcx @@ -62,7 +62,7 @@ __NE_INT_0: o64 iret __NE_INT_1: - cld + cli push rcx call idt_handle_generic pop rcx @@ -72,7 +72,7 @@ __NE_INT_1: o64 iret __NE_INT_2: - cld + cli push rcx call idt_handle_generic pop rcx @@ -83,7 +83,7 @@ __NE_INT_2: ;; @brief Triggers a breakpoint and freeze the process. RIP is also fetched. __NE_INT_3: - cld + cli push rcx call idt_handle_breakpoint pop rcx @@ -93,7 +93,7 @@ __NE_INT_3: o64 iret __NE_INT_4: - cld + cli push rcx call idt_handle_generic @@ -104,14 +104,14 @@ __NE_INT_4: o64 iret __NE_INT_5: - cld + cli std o64 iret ;; Invalid opcode interrupt __NE_INT_6: - cld + cli push rcx call idt_handle_ud pop rcx @@ -121,7 +121,7 @@ __NE_INT_6: o64 iret __NE_INT_7: - cld + cli push rcx call idt_handle_generic pop rcx @@ -132,7 +132,7 @@ __NE_INT_7: ;; Invalid opcode interrupt __NE_INT_8: - cld + cli push rcx call idt_handle_math @@ -149,7 +149,7 @@ IntExp 11 IntExp 12 __NE_INT_13: - cld + cli push rcx call idt_handle_gpf @@ -162,7 +162,7 @@ __NE_INT_13: o64 iret __NE_INT_14: - cld + cli push rcx call idt_handle_pf pop rcx @@ -195,7 +195,7 @@ IntNormal 31 [extern kApicBaseAddress] __NE_INT_32: - cld + cli push rax mov rcx, rsp @@ -218,7 +218,7 @@ IntNormal 39 [extern rtl_rtl8139_interrupt_handler] __NE_INT_40: - cld + cli push rax mov rcx, rsp @@ -244,7 +244,7 @@ IntNormal 49 [extern hal_kernel_call_enter] __NE_INT_50: - cld + cli push rax mov rax, hal_system_call_enter @@ -262,7 +262,7 @@ __NE_INT_50: o64 iret __NE_INT_51: - cld + cli push rax mov rax, hal_kernel_call_enter @@ -301,7 +301,7 @@ section .text [global hal_load_gdt] hal_load_gdt: - cld + cli lgdt [rcx] -- cgit v1.2.3