diff --git a/include/hcc_detail/hip_runtime_api.h b/include/hcc_detail/hip_runtime_api.h index 3de715cbbc..71732eb8e3 100644 --- a/include/hcc_detail/hip_runtime_api.h +++ b/include/hcc_detail/hip_runtime_api.h @@ -1112,7 +1112,7 @@ hipError_t hipMemsetAsync(void* dst, int value, size_t sizeBytes, hipStream_t st * Return snapshot of free memory, and total allocatable memory on the device. * * Returns in *free a snapshot of the current free memory. - * @returns #hipSuccess, #hipErrorInvalidDevice, #hipErrorInvalidValue (if free != NULL due to bugs) + * @returns #hipSuccess, #hipErrorInvalidDevice, #hipErrorInvalidValue * @warning On HCC, the free memory only accounts for memory allocated by this process and may be optimistic. **/ hipError_t hipMemGetInfo (size_t * free, size_t * total) ; diff --git a/src/hip_memory.cpp b/src/hip_memory.cpp index 0478ff26d7..0cc53f7754 100644 --- a/src/hip_memory.cpp +++ b/src/hip_memory.cpp @@ -864,6 +864,9 @@ hipError_t hipMemGetInfo (size_t *free, size_t *total) if (total) { *total = device->_props.totalGlobalMem; } + else { + e = hipErrorInvalidValue; + } if (free) { // TODO - replace with kernel-level for reporting free memory: @@ -872,6 +875,9 @@ hipError_t hipMemGetInfo (size_t *free, size_t *total) *free = device->_props.totalGlobalMem - deviceMemSize; } + else { + e = hipErrorInvalidValue; + } } else { e = hipErrorInvalidDevice;