From c5b0d0235f0710e5c8fa1f584255505885537877 Mon Sep 17 00:00:00 2001 From: Bananymous Date: Mon, 2 Jun 2025 11:19:07 +0300 Subject: [PATCH] Kenrel: Allow Processor::send_smp_message to send event to current CPU --- kernel/kernel/Processor.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/kernel/kernel/Processor.cpp b/kernel/kernel/Processor.cpp index 8a30dce0..e6e5657a 100644 --- a/kernel/kernel/Processor.cpp +++ b/kernel/kernel/Processor.cpp @@ -275,7 +275,6 @@ namespace Kernel void Processor::send_smp_message(ProcessorID processor_id, const SMPMessage& message, bool send_ipi) { - ASSERT(processor_id != current_id()); auto state = get_interrupt_state(); set_interrupt_state(InterruptState::Disabled); @@ -307,7 +306,12 @@ namespace Kernel ); if (send_ipi) - InterruptController::get().send_ipi(processor_id); + { + if (processor_id == current_id()) + handle_smp_messages(); + else + InterruptController::get().send_ipi(processor_id); + } set_interrupt_state(state); }