From 596268586bb4c8248a8ec106b8cdea12b9ab926a Mon Sep 17 00:00:00 2001 From: Amlal EL Mahrouss Date: Tue, 18 Jun 2024 10:39:00 +0200 Subject: IMP: TLS syscall, serial write syscall. FIX: SMP manager writes to stack frame directly, check if we also want to free the stack. Signed-off-by: Amlal EL Mahrouss --- Kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'Kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp') diff --git a/Kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp b/Kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp index e9c0941c..657ab622 100644 --- a/Kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp +++ b/Kernel/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp @@ -14,9 +14,9 @@ EXTERN_C void idt_handle_gpf(NewOS::UIntPtr rsp) { NewOS::kcout << "newoskrnl: General Protection Fault, caused by " - << NewOS::ProcessScheduler::The().Leak().GetCurrent().Leak().GetName(); + << NewOS::ProcessScheduler::The().Leak().TheCurrent().Leak().GetName(); - NewOS::ProcessScheduler::The().Leak().GetCurrent().Leak().Crash(); + NewOS::ProcessScheduler::The().Leak().TheCurrent().Leak().Crash(); } /// @brief Handle page fault. @@ -25,9 +25,9 @@ EXTERN_C void idt_handle_pf(NewOS::UIntPtr rsp) { NewOS::kcout << "newoskrnl: Segmentation Fault, caused by " - << NewOS::ProcessScheduler::The().Leak().GetCurrent().Leak().GetName(); + << NewOS::ProcessScheduler::The().Leak().TheCurrent().Leak().GetName(); - NewOS::ProcessScheduler::The().Leak().GetCurrent().Leak().Crash(); + NewOS::ProcessScheduler::The().Leak().TheCurrent().Leak().Crash(); } /// @brief Handle math fault. @@ -36,9 +36,9 @@ EXTERN_C void idt_handle_math(NewOS::UIntPtr rsp) { NewOS::kcout << "newoskrnl: Math error, caused by " - << NewOS::ProcessScheduler::The().Leak().GetCurrent().Leak().GetName(); + << NewOS::ProcessScheduler::The().Leak().TheCurrent().Leak().GetName(); - NewOS::ProcessScheduler::The().Leak().GetCurrent().Leak().Crash(); + NewOS::ProcessScheduler::The().Leak().TheCurrent().Leak().Crash(); } /// @brief Handle any generic fault. @@ -47,9 +47,9 @@ EXTERN_C void idt_handle_generic(NewOS::UIntPtr rsp) { NewOS::kcout << "newoskrnl: Execution error, caused by " - << NewOS::ProcessScheduler::The().Leak().GetCurrent().Leak().GetName(); + << NewOS::ProcessScheduler::The().Leak().TheCurrent().Leak().GetName(); - NewOS::ProcessScheduler::The().Leak().GetCurrent().Leak().Crash(); + NewOS::ProcessScheduler::The().Leak().TheCurrent().Leak().Crash(); } /// @brief Handle #UD fault. @@ -58,9 +58,9 @@ EXTERN_C void idt_handle_ud(NewOS::UIntPtr rsp) { NewOS::kcout << "newoskrnl: Invalid interrupt, caused by " - << NewOS::ProcessScheduler::The().Leak().GetCurrent().Leak().GetName(); + << NewOS::ProcessScheduler::The().Leak().TheCurrent().Leak().GetName(); - NewOS::ProcessScheduler::The().Leak().GetCurrent().Leak().Crash(); + NewOS::ProcessScheduler::The().Leak().TheCurrent().Leak().Crash(); } /// @brief Enter syscall from assembly. -- cgit v1.2.3