summaryrefslogtreecommitdiffstats
path: root/src/core
diff options
context:
space:
mode:
Diffstat (limited to 'src/core')
-rw-r--r--src/core/cpu_manager.cpp12
1 files changed, 4 insertions, 8 deletions
diff --git a/src/core/cpu_manager.cpp b/src/core/cpu_manager.cpp
index 494850992..ff2fe8ead 100644
--- a/src/core/cpu_manager.cpp
+++ b/src/core/cpu_manager.cpp
@@ -78,10 +78,10 @@ void CpuManager::RunGuestThread() {
}
while (true) {
auto& physical_core = kernel.CurrentPhysicalCore();
- LOG_CRITICAL(Core_ARM, "Running Guest Thread");
- physical_core.Idle();
- LOG_CRITICAL(Core_ARM, "Leaving Guest Thread");
- // physical_core.Run();
+ if (!physical_core.IsInterrupted()) {
+ physical_core.Idle();
+ //physical_core.Run();
+ }
auto& scheduler = physical_core.Scheduler();
scheduler.TryDoContextSwitch();
}
@@ -91,7 +91,6 @@ void CpuManager::RunIdleThread() {
auto& kernel = system.Kernel();
while (true) {
auto& physical_core = kernel.CurrentPhysicalCore();
- LOG_CRITICAL(Core_ARM, "Running Idle Thread");
physical_core.Idle();
auto& scheduler = physical_core.Scheduler();
scheduler.TryDoContextSwitch();
@@ -99,7 +98,6 @@ void CpuManager::RunIdleThread() {
}
void CpuManager::RunSuspendThread() {
- LOG_CRITICAL(Core_ARM, "Suspending Thread Entered");
auto& kernel = system.Kernel();
{
auto& sched = kernel.CurrentScheduler();
@@ -109,9 +107,7 @@ void CpuManager::RunSuspendThread() {
auto core = kernel.GetCurrentHostThreadID();
auto& scheduler = kernel.CurrentScheduler();
Kernel::Thread* current_thread = scheduler.GetCurrentThread();
- LOG_CRITICAL(Core_ARM, "Suspending Core {}", core);
Common::Fiber::YieldTo(current_thread->GetHostContext(), core_data[core].host_context);
- LOG_CRITICAL(Core_ARM, "Unsuspending Core {}", core);
ASSERT(scheduler.ContextSwitchPending());
ASSERT(core == kernel.GetCurrentHostThreadID());
scheduler.TryDoContextSwitch();