Memory Manager: ensure safety of GPU to CPU address.
This commit is contained in:
		| @@ -193,6 +193,9 @@ void MemoryManager::Unmap(GPUVAddr gpu_addr, std::size_t size) { | |||||||
| } | } | ||||||
|  |  | ||||||
| std::optional<VAddr> MemoryManager::GpuToCpuAddress(GPUVAddr gpu_addr) const { | 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<true>(gpu_addr) != EntryType::Mapped) [[unlikely]] { | ||||||
|         if (GetEntry<false>(gpu_addr) != EntryType::Mapped) { |         if (GetEntry<false>(gpu_addr) != EntryType::Mapped) { | ||||||
|             return std::nullopt; |             return std::nullopt; | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user