summaryrefslogtreecommitdiffhomepage
path: root/dev/ZKA/HALKit
diff options
context:
space:
mode:
Diffstat (limited to 'dev/ZKA/HALKit')
-rw-r--r--dev/ZKA/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cxx4
-rw-r--r--dev/ZKA/HALKit/AMD64/HalSchedulerCore.cxx1
2 files changed, 4 insertions, 1 deletions
diff --git a/dev/ZKA/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cxx b/dev/ZKA/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cxx
index 99b784be..1e9e6ec1 100644
--- a/dev/ZKA/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cxx
+++ b/dev/ZKA/HALKit/AMD64/HalCoreInterruptHandlerAMD64.cxx
@@ -20,6 +20,7 @@ EXTERN_C void idt_handle_gpf(Kernel::UIntPtr rsp)
EXTERN_C void idt_handle_pf(Kernel::UIntPtr rsp)
{
Kernel::UserProcessScheduler::The().CurrentProcess().Leak().Crash();
+ Kernel::ke_stop(RUNTIME_CHECK_PROCESS);
}
/// @brief Handle math fault.
@@ -27,6 +28,7 @@ EXTERN_C void idt_handle_pf(Kernel::UIntPtr rsp)
EXTERN_C void idt_handle_math(Kernel::UIntPtr rsp)
{
Kernel::UserProcessScheduler::The().CurrentProcess().Leak().Crash();
+ Kernel::ke_stop(RUNTIME_CHECK_PROCESS);
}
/// @brief Handle any generic fault.
@@ -34,6 +36,7 @@ EXTERN_C void idt_handle_math(Kernel::UIntPtr rsp)
EXTERN_C void idt_handle_generic(Kernel::UIntPtr rsp)
{
Kernel::UserProcessScheduler::The().CurrentProcess().Leak().Crash();
+ Kernel::ke_stop(RUNTIME_CHECK_PROCESS);
}
/// @brief Handle #UD fault.
@@ -41,6 +44,7 @@ EXTERN_C void idt_handle_generic(Kernel::UIntPtr rsp)
EXTERN_C void idt_handle_ud(Kernel::UIntPtr rsp)
{
Kernel::UserProcessScheduler::The().CurrentProcess().Leak().Crash();
+ Kernel::ke_stop(RUNTIME_CHECK_PROCESS);
}
/// @brief Enter syscall from assembly.
diff --git a/dev/ZKA/HALKit/AMD64/HalSchedulerCore.cxx b/dev/ZKA/HALKit/AMD64/HalSchedulerCore.cxx
index a63328ab..3897cb6a 100644
--- a/dev/ZKA/HALKit/AMD64/HalSchedulerCore.cxx
+++ b/dev/ZKA/HALKit/AMD64/HalSchedulerCore.cxx
@@ -14,7 +14,6 @@ Void UserProcess::SetEntrypoint(VoidPtr imageStart) noexcept
if (imageStart == nullptr)
this->Crash();
-
VoidPtr cr3_pd;
asm volatile(