diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2019-09-26 19:08:22 -0400 |
---|---|---|
committer | FernandoS27 <fsahmkow27@gmail.com> | 2019-10-04 19:59:53 -0400 |
commit | 3f104464dec13f9ba90eaca5dafca87ee4116a60 (patch) | |
tree | 29d73dec1ba2a661a9930c63689973a65482ce3b /src/video_core/gpu_thread.cpp | |
parent | 69fa2e652560dd72f7b53d44fec9d7fe4aa0ffb9 (diff) |
Core: Wait for GPU to be idle before shutting down.
Diffstat (limited to 'src/video_core/gpu_thread.cpp')
-rw-r--r-- | src/video_core/gpu_thread.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/video_core/gpu_thread.cpp b/src/video_core/gpu_thread.cpp index d7048b6ae7..4a42634d2c 100644 --- a/src/video_core/gpu_thread.cpp +++ b/src/video_core/gpu_thread.cpp @@ -90,6 +90,11 @@ void ThreadManager::FlushAndInvalidateRegion(CacheAddr addr, u64 size) { InvalidateRegion(addr, size); } +void ThreadManager::WaitIdle() const { + while (state.last_fence > state.signaled_fence.load()) { + } +} + u64 ThreadManager::PushCommand(CommandData&& command_data) { const u64 fence{++state.last_fence}; state.queue.Push(CommandDataContainer(std::move(command_data), fence)); |