NVFlinger: Lock race condition between CPU, Host Timing, VSync.

This commit is contained in:
Fernando Sahmkow
2020-02-27 10:47:02 -04:00
parent 3902067008
commit cc3aa95926
3 changed files with 11 additions and 0 deletions

View File

@ -5,6 +5,7 @@
#pragma once
#include <memory>
#include <mutex>
#include <optional>
#include <string>
#include <string_view>
@ -79,6 +80,10 @@ public:
s64 GetNextTicks() const;
std::unique_lock<std::mutex> Lock() {
return std::unique_lock{*guard};
}
private:
/// Finds the display identified by the specified ID.
VI::Display* FindDisplay(u64 display_id);
@ -108,6 +113,8 @@ private:
/// Event that handles screen composition.
std::shared_ptr<Core::Timing::EventType> composition_event;
std::shared_ptr<std::mutex> guard;
Core::System& system;
};