|
|
|
@ -391,10 +391,12 @@ void KScheduler::EnableScheduling(KernelCore& kernel, u64 cores_needing_scheduli |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
ASSERT(GetCurrentThreadPointer(kernel)->GetDisableDispatchCount() >= 1); |
|
|
|
auto* current_thread = GetCurrentThreadPointer(kernel); |
|
|
|
|
|
|
|
if (GetCurrentThreadPointer(kernel)->GetDisableDispatchCount() > 1) { |
|
|
|
GetCurrentThreadPointer(kernel)->EnableDispatch(); |
|
|
|
ASSERT(current_thread->GetDisableDispatchCount() >= 1); |
|
|
|
|
|
|
|
if (current_thread->GetDisableDispatchCount() > 1) { |
|
|
|
current_thread->EnableDispatch(); |
|
|
|
} else { |
|
|
|
RescheduleCores(kernel, cores_needing_scheduling); |
|
|
|
} |
|
|
|
|