From e2eb784eef0dfcc4ef2b300baad82860da1758c6 Mon Sep 17 00:00:00 2001 From: Aiken Harris Date: Tue, 9 Jun 2026 09:39:17 +0200 Subject: [PATCH] Enter idle loop instead of halting system --- xtoskrnl/ke/amd64/krnlinit.cc | 12 ++++++------ xtoskrnl/ke/i686/krnlinit.cc | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/xtoskrnl/ke/amd64/krnlinit.cc b/xtoskrnl/ke/amd64/krnlinit.cc index e71e4e7..3ccf3ea 100644 --- a/xtoskrnl/ke/amd64/krnlinit.cc +++ b/xtoskrnl/ke/amd64/krnlinit.cc @@ -66,10 +66,10 @@ KE::KernelInit::BootstrapApplicationProcessor(IN PPROCESSOR_START_BLOCK StartBlo /* Register DISPATCH interrupt handler */ HL::Irq::RegisterSystemInterruptHandler(APIC_VECTOR_DPC, KE::Dispatcher::HandleDispatchInterrupt); - /* Enter infinite loop */ - DebugPrint(L"KernelInit::BootstrapApplicationProcessor() finished for CPU #%lu. Entering infinite loop.\n", + /* Enter idle loop */ + DebugPrint(L"KernelInit::BootstrapApplicationProcessor() finished for CPU #%lu. Entering IDLE loop.\n", ControlBlock->CpuNumber); - KE::Crash::HaltSystem(); + KE::Dispatcher::EnterIdleLoop(); } /** @@ -124,9 +124,9 @@ KE::KernelInit::BootstrapKernel(VOID) /* Register DISPATCH interrupt handler */ HL::Irq::RegisterSystemInterruptHandler(APIC_VECTOR_DPC, KE::Dispatcher::HandleDispatchInterrupt); - /* Enter infinite loop */ - DebugPrint(L"KernelInit::BootstrapKernel() finished. Entering infinite loop.\n"); - KE::Crash::HaltSystem(); + /* Enter idle loop */ + DebugPrint(L"KernelInit::BootstrapKernel() finished. Entering IDLE loop.\n"); + KE::Dispatcher::EnterIdleLoop(); } /** diff --git a/xtoskrnl/ke/i686/krnlinit.cc b/xtoskrnl/ke/i686/krnlinit.cc index 1e1aa19..d723171 100644 --- a/xtoskrnl/ke/i686/krnlinit.cc +++ b/xtoskrnl/ke/i686/krnlinit.cc @@ -66,10 +66,10 @@ KE::KernelInit::BootstrapApplicationProcessor(IN PPROCESSOR_START_BLOCK StartBlo /* Register DISPATCH interrupt handler */ HL::Irq::RegisterSystemInterruptHandler(APIC_VECTOR_DPC, KE::Dispatcher::HandleDispatchInterrupt); - /* Enter infinite loop */ - DebugPrint(L"KernelInit::BootstrapApplicationProcessor() finished for CPU #%lu. Entering infinite loop.\n", + /* Enter idle loop */ + DebugPrint(L"KernelInit::BootstrapApplicationProcessor() finished for CPU #%lu. Entering IDLE loop.\n", ControlBlock->CpuNumber); - KE::Crash::HaltSystem(); + KE::Dispatcher::EnterIdleLoop(); } /** @@ -124,9 +124,9 @@ KE::KernelInit::BootstrapKernel(VOID) /* Register DISPATCH interrupt handler */ HL::Irq::RegisterSystemInterruptHandler(APIC_VECTOR_DPC, KE::Dispatcher::HandleDispatchInterrupt); - /* Enter infinite loop */ - DebugPrint(L"KernelInit::BootstrapKernel() finished. Entering infinite loop.\n"); - KE::Crash::HaltSystem(); + /* Enter idle loop */ + DebugPrint(L"KernelInit::BootstrapKernel() finished. Entering IDLE loop.\n"); + KE::Dispatcher::EnterIdleLoop(); } /**