From 2e9a04f5e7cd4cf3590b0473390c1b096579ab30 Mon Sep 17 00:00:00 2001 From: Alex Date: Mon, 6 Mar 2023 03:20:23 +0200 Subject: [PATCH] Moved smart lock --- Tasking/Scheduler.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Tasking/Scheduler.cpp b/Tasking/Scheduler.cpp index 9d2a30e..f31b342 100644 --- a/Tasking/Scheduler.cpp +++ b/Tasking/Scheduler.cpp @@ -465,7 +465,6 @@ namespace Tasking SafeFunction NIF void Task::Schedule(CPU::x64::TrapFrame *Frame) { - SmartCriticalSection(SchedulerLock); if (StopScheduler) { warn("Scheduler stopped."); @@ -670,7 +669,11 @@ namespace Tasking __sync; /* TODO: Is this really needed? */ } - SafeFunction NIF void Task::OnInterruptReceived(CPU::x64::TrapFrame *Frame) { this->Schedule(Frame); } + SafeFunction NIF void Task::OnInterruptReceived(CPU::x64::TrapFrame *Frame) + { + SmartCriticalSection(SchedulerLock); + this->Schedule(Frame); + } #elif defined(a32) SafeFunction bool Task::FindNewProcess(void *CPUDataPointer) {