From 397ad08faecb2de3fc705c56c2e47f1a14da195b Mon Sep 17 00:00:00 2001 From: foreman Date: Tue, 28 May 2019 19:06:58 -0400 Subject: [PATCH] P4 to Git Change 1788615 by cpaquot@cpaquot-ocl-lc-lnx on 2019/05/28 18:54:55 SWDEV-190565 - [HIP] Allow null stream as argument to hipStreamWaitEvent. Affected files ... ... //depot/stg/opencl/drivers/opencl/api/hip/hip_context.cpp#19 edit ... //depot/stg/opencl/drivers/opencl/api/hip/hip_stream.cpp#19 edit --- hipamd/api/hip/hip_context.cpp | 24 ++++++++++++------------ hipamd/api/hip/hip_stream.cpp | 6 +++++- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/hipamd/api/hip/hip_context.cpp b/hipamd/api/hip/hip_context.cpp index 47bf651b8c..d519370971 100644 --- a/hipamd/api/hip/hip_context.cpp +++ b/hipamd/api/hip/hip_context.cpp @@ -255,7 +255,7 @@ hipError_t hipCtxGetDevice(hipDevice_t* device) { HIP_RETURN(hipErrorInvalidValue); } - return hipErrorUnknown; + HIP_RETURN(hipErrorUnknown); } hipError_t hipCtxGetApiVersion(hipCtx_t ctx, int* apiVersion) { @@ -263,7 +263,7 @@ hipError_t hipCtxGetApiVersion(hipCtx_t ctx, int* apiVersion) { assert(0 && "Unimplemented"); - return hipErrorUnknown; + HIP_RETURN(hipErrorUnknown); } hipError_t hipCtxGetCacheConfig(hipFuncCache_t* cacheConfig) { @@ -271,7 +271,7 @@ hipError_t hipCtxGetCacheConfig(hipFuncCache_t* cacheConfig) { assert(0 && "Unimplemented"); - return hipErrorUnknown; + HIP_RETURN(hipErrorUnknown); } hipError_t hipCtxSetCacheConfig(hipFuncCache_t cacheConfig) { @@ -279,7 +279,7 @@ hipError_t hipCtxSetCacheConfig(hipFuncCache_t cacheConfig) { assert(0 && "Unimplemented"); - return hipErrorUnknown; + HIP_RETURN(hipErrorUnknown); } hipError_t hipCtxSetSharedMemConfig(hipSharedMemConfig config) { @@ -287,7 +287,7 @@ hipError_t hipCtxSetSharedMemConfig(hipSharedMemConfig config) { assert(0 && "Unimplemented"); - return hipErrorUnknown; + HIP_RETURN(hipErrorUnknown); } hipError_t hipCtxSynchronize(void) { @@ -295,7 +295,7 @@ hipError_t hipCtxSynchronize(void) { assert(0 && "Unimplemented"); - return hipErrorUnknown; + HIP_RETURN(hipErrorUnknown); } hipError_t hipCtxGetFlags(unsigned int* flags) { @@ -303,7 +303,7 @@ hipError_t hipCtxGetFlags(unsigned int* flags) { assert(0 && "Unimplemented"); - return hipErrorUnknown; + HIP_RETURN(hipErrorUnknown); } hipError_t hipDevicePrimaryCtxGetState(hipDevice_t dev, unsigned int* flags, int* active) { @@ -311,7 +311,7 @@ hipError_t hipDevicePrimaryCtxGetState(hipDevice_t dev, unsigned int* flags, int assert(0 && "Unimplemented"); - return hipErrorUnknown; + HIP_RETURN(hipErrorUnknown); } hipError_t hipDevicePrimaryCtxRelease(hipDevice_t dev) { @@ -319,7 +319,7 @@ hipError_t hipDevicePrimaryCtxRelease(hipDevice_t dev) { assert(0 && "Unimplemented"); - return hipErrorUnknown; + HIP_RETURN(hipErrorUnknown); } hipError_t hipDevicePrimaryCtxRetain(hipCtx_t* pctx, hipDevice_t dev) { @@ -327,7 +327,7 @@ hipError_t hipDevicePrimaryCtxRetain(hipCtx_t* pctx, hipDevice_t dev) { assert(0 && "Unimplemented"); - return hipErrorUnknown; + HIP_RETURN(hipErrorUnknown); } hipError_t hipDevicePrimaryCtxReset(hipDevice_t dev) { @@ -335,7 +335,7 @@ hipError_t hipDevicePrimaryCtxReset(hipDevice_t dev) { assert(0 && "Unimplemented"); - return hipErrorUnknown; + HIP_RETURN(hipErrorUnknown); } hipError_t hipDevicePrimaryCtxSetFlags(hipDevice_t dev, unsigned int flags) { @@ -343,5 +343,5 @@ hipError_t hipDevicePrimaryCtxSetFlags(hipDevice_t dev, unsigned int flags) { assert(0 && "Unimplemented"); - return hipErrorUnknown; + HIP_RETURN(hipErrorUnknown); } diff --git a/hipamd/api/hip/hip_stream.cpp b/hipamd/api/hip/hip_stream.cpp index 72ede63ecb..59456303fe 100644 --- a/hipamd/api/hip/hip_stream.cpp +++ b/hipamd/api/hip/hip_stream.cpp @@ -188,7 +188,11 @@ hipError_t hipStreamDestroy(hipStream_t stream) { hipError_t hipStreamWaitEvent(hipStream_t stream, hipEvent_t event, unsigned int flags) { HIP_INIT_API(stream, event, flags); - if (stream == nullptr || event == nullptr) { + if (stream == nullptr) { + stream = reinterpret_cast(as_cl(hip::getNullStream())); + } + + if (event == nullptr) { HIP_RETURN(hipErrorInvalidResourceHandle); }