소스 검색

core: Shutdown: Move kernel cleanup to later in shutdown.

- Fixes a shutdown crash due to a race condition with GPU still accessing memory.
bunnei 5 년 전
부모
커밋
925671071c
1개의 변경된 파일1개의 추가작업 그리고 12개의 파일을 삭제
  1. 1 12
      src/core/core.cpp

+ 1 - 12
src/core/core.cpp

@@ -299,28 +299,17 @@ struct System::Impl {
             gpu_core->WaitIdle();
         }
 
-        // Shutdown emulation session
         services.reset();
         service_manager.reset();
         cheat_engine.reset();
         telemetry_session.reset();
-
-        // Close all CPU/threading state
         cpu_manager.Shutdown();
-
-        // Release the Time Manager's resources
         time_manager.Shutdown();
-
-        // Shutdown kernel and core timing
         core_timing.Shutdown();
-        kernel.Shutdown();
-
-        // Close app loader
         app_loader.reset();
         gpu_core.reset();
         perf_stats.reset();
-
-        // Clear all applets
+        kernel.Shutdown();
         applet_manager.ClearAll();
 
         LOG_DEBUG(Core, "Shutdown OK");