Kenrel: Allow Processor::send_smp_message to send event to current CPU

This commit is contained in:
Bananymous 2025-06-02 11:19:07 +03:00
parent b7948551ff
commit c5b0d0235f
1 changed files with 6 additions and 2 deletions

View File

@ -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);
}