From 4c3a20a16e114fdbb1afd7ae606943a6e4203f35 Mon Sep 17 00:00:00 2001 From: Christophe Paquot Date: Mon, 18 Apr 2022 14:27:44 -0700 Subject: [PATCH] SWDEV-322620 - Virtual Memory Management Implement virtualFree for PAL Change-Id: I4482777fa52c979d42a7c57103862e2e02279024 --- rocclr/device/pal/paldevice.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/rocclr/device/pal/paldevice.cpp b/rocclr/device/pal/paldevice.cpp index 7eb59d64b0..c7ab6ccf3a 100644 --- a/rocclr/device/pal/paldevice.cpp +++ b/rocclr/device/pal/paldevice.cpp @@ -2262,6 +2262,11 @@ void* Device::virtualAlloc(void* addr, size_t size, size_t alignment) void Device::virtualFree(void* addr) { + amd::Memory* svmMem = amd::MemObjMap::FindMemObj(addr); + if (nullptr != svmMem && (svmMem->getMemFlags() & CL_MEM_VA_RANGE_AMD)) { + svmMem->release(); + amd::MemObjMap::RemoveMemObj(addr); + } } void Device::virtualMap(void* addr, amd::Memory& mem, size_t size)