SWDEV-374360 - Handle free for external memory.

Change-Id: Ibfaf30eef371499a3c1f931a73cce76c83d8f7f3
이 커밋은 다음에 포함됨:
Jaydeep Patel 작성하고 Jaydeepkumar Patel가 2023-01-16 13:07:01 -05:00를 커밋함
1 부모 fdecc1b351
커밋 7eecbdd9db
1 파일이 변경됨
+9 -2
+9 -2
파일 보기
@@ -110,7 +110,13 @@ hipError_t ihipFree(void *ptr) {
hip::Stream::syncNonBlockingStreams(device_id);
// Find out if memory belongs to any memory pool
if (!g_devices[device_id]->FreeMemory(memory_object, nullptr)) {
amd::SvmBuffer::free(memory_object->getContext(), ptr);
// External mem is not svm.
if (memory_object->isInterop()) {
amd::MemObjMap::RemoveMemObj(ptr);
memory_object->release();
} else {
amd::SvmBuffer::free(memory_object->getContext(), ptr);
}
}
return hipSuccess;
}
@@ -163,7 +169,8 @@ hipError_t hipExternalMemoryGetMappedBuffer(
HIP_RETURN(hipErrorInvalidValue);
}
*devPtr = reinterpret_cast<void*>(devMem->virtualAddress() + bufferDesc->offset);
amd::MemObjMap::AddMemObj(*devPtr, buf);
buf->retain();
HIP_RETURN(hipSuccess);
}