diff options
author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2022-04-02 22:38:58 +0200 |
---|---|---|
committer | Fernando Sahmkow <fsahmkow27@gmail.com> | 2022-10-06 21:00:53 +0200 |
commit | 7cfa28a6664fa79b5b12341a93e995d74cb0deef (patch) | |
tree | 3a32af47e26d3e62223e6558ccb49d1fdd521c7e | |
parent | 5a568b1655f0d721891083da19e2da2614796389 (diff) |
Memory Manager: ensure safety of GPU to CPU address.
-rw-r--r-- | src/video_core/memory_manager.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/video_core/memory_manager.cpp b/src/video_core/memory_manager.cpp index 0f97db2720..4e52ce0fd2 100644 --- a/src/video_core/memory_manager.cpp +++ b/src/video_core/memory_manager.cpp @@ -193,6 +193,9 @@ void MemoryManager::Unmap(GPUVAddr gpu_addr, std::size_t size) { } std::optional<VAddr> MemoryManager::GpuToCpuAddress(GPUVAddr gpu_addr) const { + if (gpu_addr >= address_space_size) [[unlikely]] { + return std::nullopt; + } if (GetEntry<true>(gpu_addr) != EntryType::Mapped) [[unlikely]] { if (GetEntry<false>(gpu_addr) != EntryType::Mapped) { return std::nullopt; |