diff --git a/projects/clr/hipamd/src/hip_stream.cpp b/projects/clr/hipamd/src/hip_stream.cpp index b9b84033b6..cdd446239d 100644 --- a/projects/clr/hipamd/src/hip_stream.cpp +++ b/projects/clr/hipamd/src/hip_stream.cpp @@ -153,12 +153,14 @@ bool Stream::StreamCaptureOngoing(hipStream_t hStream) { return false; } // If any stream in current/concurrent thread is capturing in global mode - amd::ScopedLock lock(g_captureStreamsLock); - if (!g_captureStreams.empty()) { - for (auto stream : hip::g_captureStreams) { - stream->SetCaptureStatus(hipStreamCaptureStatusInvalidated); + if (hip::tls.stream_capture_mode_ == hipStreamCaptureModeGlobal) { + amd::ScopedLock lock(g_captureStreamsLock); + if (!g_captureStreams.empty()) { + for (auto stream : hip::g_captureStreams) { + stream->SetCaptureStatus(hipStreamCaptureStatusInvalidated); + } + return true; } - return true; } // If any stream in current thread is capturing in ThreadLocal mode if (!hip::tls.capture_streams_.empty()) {