SWDEV-311271 - Correct the error codes in mempool

Change-Id: Iacf8ad2cc454dfe53ccdb47c08d871b24ecf4107


[ROCm/clr commit: 1d8562eb7d]
This commit is contained in:
German Andryeyev committed 2024-03-12 10:18:44 -04:00
1 parent 311b0ed376
commit f3db4e12e6
2 files changed
+31 -6

No files matched your search

+15 -3
View File
@@ -303,8 +303,13 @@ hipError_t hipMemPoolCreate(hipMemPool_t* mem_pool, const hipMemPoolProps* pool_
(pool_props->location.id >= g_devices.size())) {
HIP_RETURN(hipErrorInvalidValue);
}
if (IS_WINDOWS && pool_props->handleTypes == hipMemHandleTypePosixFileDescriptor) {
HIP_RETURN(hipErrorInvalidValue);
}
auto device = g_devices[pool_props->location.id];
auto pool = new hip::MemoryPool(device, pool_props->handleTypes != hipMemHandleTypeNone);
auto pool = new hip::MemoryPool(device, pool_props);
if (pool == nullptr) {
HIP_RETURN(hipErrorInvalidValue);
}
@@ -376,11 +381,14 @@ hipError_t hipMemPoolExportToShareableHandle(
hipMemAllocationHandleType handle_type,
unsigned int flags) {
HIP_INIT_API(hipMemPoolExportToShareableHandle, shared_handle, mem_pool, handle_type, flags);
if (mem_pool == nullptr || shared_handle == nullptr || flags == -1) {
if (mem_pool == nullptr || shared_handle == nullptr || flags != 0) {
HIP_RETURN(hipErrorInvalidValue);
}
auto mpool = reinterpret_cast<hip::MemoryPool*>(mem_pool);
if ((handle_type != mpool->Properties().handleTypes) || (handle_type == hipMemHandleTypeNone)) {
HIP_RETURN(hipErrorInvalidValue);
}
auto handle = mpool->Export();
if (!handle) {
HIP_RETURN(hipErrorInvalidValue);
@@ -397,7 +405,11 @@ hipError_t hipMemPoolImportFromShareableHandle(
hipMemAllocationHandleType handle_type,
unsigned int flags) {
HIP_INIT_API(hipMemPoolImportFromShareableHandle, mem_pool, shared_handle, handle_type, flags);
if (mem_pool == nullptr || shared_handle == nullptr || flags == -1) {
if (mem_pool == nullptr || shared_handle == nullptr || flags != 0) {
HIP_RETURN(hipErrorInvalidValue);
}
if (handle_type == hipMemHandleTypeNone) {
HIP_RETURN(hipErrorInvalidValue);
}