video_core: lock interval map update
This commit is contained in:
		@@ -29,6 +29,8 @@ RasterizerAccelerated::RasterizerAccelerated(Memory& cpu_memory_) : map{}, cpu_m
 | 
			
		||||
RasterizerAccelerated::~RasterizerAccelerated() = default;
 | 
			
		||||
 | 
			
		||||
void RasterizerAccelerated::UpdatePagesCachedCount(VAddr addr, u64 size, bool cache) {
 | 
			
		||||
    std::scoped_lock lk{map_lock};
 | 
			
		||||
 | 
			
		||||
    // Align sizes.
 | 
			
		||||
    addr = Common::AlignDown(addr, YUZU_PAGESIZE);
 | 
			
		||||
    size = Common::AlignUp(size, YUZU_PAGESIZE);
 | 
			
		||||
 
 | 
			
		||||
@@ -3,6 +3,7 @@
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#include <mutex>
 | 
			
		||||
#include <boost/icl/interval_map.hpp>
 | 
			
		||||
 | 
			
		||||
#include "common/common_types.h"
 | 
			
		||||
@@ -30,6 +31,7 @@ private:
 | 
			
		||||
    using IntervalType = IntervalMap::interval_type;
 | 
			
		||||
 | 
			
		||||
    IntervalMap map;
 | 
			
		||||
    std::mutex map_lock;
 | 
			
		||||
    Core::Memory::Memory& cpu_memory;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user