From 1ab61e6bb20dd39f85fca30c1d0a83db12fea9d6 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Wed, 28 Feb 2024 17:48:25 +0100 Subject: HCoreKrnl: Fix IDT, will get the rt_handle_interrupts right, and not corrupt the registers, see below. - New register layout in Stackframe. - Thinking about a way to wrap this handler into a valid win64 call. Signed-off-by: Amlal El Mahrouss --- Private/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) (limited to 'Private/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp') diff --git a/Private/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp b/Private/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp index d1483ef3..486c1513 100644 --- a/Private/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp +++ b/Private/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cpp @@ -11,17 +11,7 @@ #include #include -#include "KernelKit/DebugOutput.hpp" - -extern "C" void idt_handle_system_call(HCore::UIntPtr rsp) { - HCore::HAL::StackFrame *sf = reinterpret_cast(rsp); - rt_syscall_handle(sf); - - HCore::kcout << "System Call with ID: " - << HCore::StringBuilder::FromInt("syscall{%}", sf->R15); -} - -extern "C" void idt_handle_gpf(HCore::UIntPtr rsp) { +EXTERN_C void idt_handle_gpf(HCore::UIntPtr rsp) { MUST_PASS(HCore::ProcessManager::Shared().Leak().GetCurrent()); HCore::kcout << HCore::StringBuilder::FromInt("rsp{%}", rsp); -- cgit v1.2.3