diff --git a/projects/clr/hipamd/src/hip_internal.hpp b/projects/clr/hipamd/src/hip_internal.hpp index 2983a934c7..ead3fc8e96 100644 --- a/projects/clr/hipamd/src/hip_internal.hpp +++ b/projects/clr/hipamd/src/hip_internal.hpp @@ -166,7 +166,6 @@ static amd::Monitor g_hipInitlock{"hipInit lock"}; if (hip::tls.capture_streams_.size() != 0) { \ HIP_RETURN(hipErrorStreamCaptureUnsupported); \ } \ - amd::ScopedLock lock(g_captureStreamsLock); \ if (g_captureStreams.size() != 0) { \ HIP_RETURN(hipErrorStreamCaptureUnsupported); \ } \ diff --git a/projects/clr/hipamd/src/hip_stream.cpp b/projects/clr/hipamd/src/hip_stream.cpp index 8a240a857f..a396e81249 100644 --- a/projects/clr/hipamd/src/hip_stream.cpp +++ b/projects/clr/hipamd/src/hip_stream.cpp @@ -470,10 +470,12 @@ hipError_t hipStreamDestroy(hipStream_t stream) { } s->GetDevice()->RemoveStreamFromPools(s); - amd::ScopedLock lock(g_captureStreamsLock); - const auto& g_it = std::find(g_captureStreams.begin(), g_captureStreams.end(), s); - if (g_it != g_captureStreams.end()) { - g_captureStreams.erase(g_it); + { + amd::ScopedLock lock(g_captureStreamsLock); + const auto& g_it = std::find(g_captureStreams.begin(), g_captureStreams.end(), s); + if (g_it != g_captureStreams.end()) { + g_captureStreams.erase(g_it); + } } const auto& l_it = std::find(hip::tls.capture_streams_.begin(), hip::tls.capture_streams_.end(), s);