From eb5d8d2647b382d9293a5a4dfc999927359bcbb8 Mon Sep 17 00:00:00 2001 From: Ioannis Assiouras Date: Mon, 12 Feb 2024 12:48:21 +0000 Subject: [PATCH] SWDEV-445576 - Return error when hipMemPoolDestroy is invoked on the default mempool Change-Id: I7a7ab499f781cf7e92cad1ae39a40b4f37f62653 [ROCm/clr commit: 4d61237a6f79cf9ec28d92310b6895205c6895e0] --- projects/clr/hipamd/src/hip_mempool.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/projects/clr/hipamd/src/hip_mempool.cpp b/projects/clr/hipamd/src/hip_mempool.cpp index 675f7a3e0b..fcbeb0557c 100644 --- a/projects/clr/hipamd/src/hip_mempool.cpp +++ b/projects/clr/hipamd/src/hip_mempool.cpp @@ -252,9 +252,12 @@ hipError_t hipMemPoolDestroy(hipMemPool_t mem_pool) { HIP_RETURN(hipErrorInvalidValue); } hip::MemoryPool* hip_mem_pool = reinterpret_cast(mem_pool); - hip_mem_pool->ReleaseFreedMemory(); auto device = hip_mem_pool->Device(); + if (hip_mem_pool == device->GetDefaultMemoryPool()) { + HIP_RETURN(hipErrorInvalidValue); + } + hip_mem_pool->ReleaseFreedMemory(); // Force default pool if the current one is destroyed if (hip_mem_pool == device->GetCurrentMemoryPool()) {