Merge pull request #4586 from yuzu-emu/tsan-cpu-interrupt
cpu_interrupt_handler: Make is_interrupted an atomic
This commit is contained in:
		
						commit
						40320a1d84
					
				| @ -7,9 +7,7 @@ | ||||
| 
 | ||||
| namespace Core { | ||||
| 
 | ||||
| CPUInterruptHandler::CPUInterruptHandler() : is_interrupted{} { | ||||
|     interrupt_event = std::make_unique<Common::Event>(); | ||||
| } | ||||
| CPUInterruptHandler::CPUInterruptHandler() : interrupt_event{std::make_unique<Common::Event>()} {} | ||||
| 
 | ||||
| CPUInterruptHandler::~CPUInterruptHandler() = default; | ||||
| 
 | ||||
| @ -17,7 +15,7 @@ void CPUInterruptHandler::SetInterrupt(bool is_interrupted_) { | ||||
|     if (is_interrupted_) { | ||||
|         interrupt_event->Set(); | ||||
|     } | ||||
|     this->is_interrupted = is_interrupted_; | ||||
|     is_interrupted = is_interrupted_; | ||||
| } | ||||
| 
 | ||||
| void CPUInterruptHandler::AwaitInterrupt() { | ||||
|  | ||||
| @ -4,6 +4,7 @@ | ||||
| 
 | ||||
| #pragma once | ||||
| 
 | ||||
| #include <atomic> | ||||
| #include <memory> | ||||
| 
 | ||||
| namespace Common { | ||||
| @ -32,8 +33,8 @@ public: | ||||
|     void AwaitInterrupt(); | ||||
| 
 | ||||
| private: | ||||
|     bool is_interrupted{}; | ||||
|     std::unique_ptr<Common::Event> interrupt_event; | ||||
|     std::atomic_bool is_interrupted{false}; | ||||
| }; | ||||
| 
 | ||||
| } // namespace Core
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 bunnei
						bunnei