From c9532093ceb5cca7ff3b983273a040b23f36e4e8 Mon Sep 17 00:00:00 2001 From: Satyanvesh Dittakavi Date: Tue, 23 Nov 2021 15:44:15 +0000 Subject: [PATCH] SWDEV-309286 - Add check to limit host malloc upto system memory size Change-Id: I4a0f55d6f7faa323b16d9b8fb12e876900da1bbc --- hipamd/src/hip_memory.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/hipamd/src/hip_memory.cpp b/hipamd/src/hip_memory.cpp index 65faaebf0e..04127fef4d 100644 --- a/hipamd/src/hip_memory.cpp +++ b/hipamd/src/hip_memory.cpp @@ -274,11 +274,14 @@ hipError_t ihipMalloc(void** ptr, size_t sizeBytes, unsigned int flags) return hipErrorOutOfMemory; } - if (!useHostDevice && (amdContext->devices()[0]->info().maxMemAllocSize_ < sizeBytes)) { + const auto& dev_info = amdContext->devices()[0]->info(); + + if ((!useHostDevice && (dev_info.maxMemAllocSize_ < sizeBytes)) || + (useHostDevice && (dev_info.maxPhysicalMemAllocSize_ < sizeBytes))) { return hipErrorOutOfMemory; } - *ptr = amd::SvmBuffer::malloc(*amdContext, flags, sizeBytes, amdContext->devices()[0]->info().memBaseAddrAlign_, + *ptr = amd::SvmBuffer::malloc(*amdContext, flags, sizeBytes, dev_info.memBaseAddrAlign_, useHostDevice ? curDevContext->svmDevices()[0] : nullptr); if (*ptr == nullptr) {