From b59859c52e62dfbc822a5309bcd07e174ccb6c75 Mon Sep 17 00:00:00 2001 From: "Jayaprakash, Karthik" Date: Tue, 20 May 2025 15:24:49 -0400 Subject: [PATCH] SWDEV-457749 - Use size of handle for range instead of actual size for physmem. (#342) [ROCm/clr commit: bed454caa1a765708a7cb2e9e4177d3e138bc0a3] --- projects/clr/rocclr/device/device.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/projects/clr/rocclr/device/device.cpp b/projects/clr/rocclr/device/device.cpp index 2154535c11..eca7b55168 100644 --- a/projects/clr/rocclr/device/device.cpp +++ b/projects/clr/rocclr/device/device.cpp @@ -370,7 +370,9 @@ amd::Memory* MemObjMap::FindMemObj(const void* k, size_t* offset) { --it; amd::Memory* mem = it->second; - if (key >= it->first && key < (it->first + mem->getSize())) { + size_t mem_size = (mem->getMemFlags() & ROCCLR_MEM_PHYMEM) ? sizeof(mem->getUserData().hsa_handle) + : mem->getSize(); + if (key >= it->first && key < (it->first + mem_size)) { if (offset != nullptr) { *offset = key - it->first; }