From 9955bcff65c832cb09c9ad4dca4f257d990ce562 Mon Sep 17 00:00:00 2001 From: foreman Date: Tue, 16 Jul 2019 17:51:22 -0400 Subject: [PATCH] P4 to Git Change 1968648 by jatang@jatang_win_pal_lc on 2019/07/16 17:42:09 SWDEV-174198 - Fix segfault running integer_ops. Affected files ... ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#78 edit [ROCm/clr commit: 8f1e23197ac0f517f2dab2e0cb4a398ce6a51654] --- projects/clr/rocclr/runtime/device/rocm/rocvirtual.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/projects/clr/rocclr/runtime/device/rocm/rocvirtual.cpp b/projects/clr/rocclr/runtime/device/rocm/rocvirtual.cpp index a5be1940bf..f6af73f13f 100644 --- a/projects/clr/rocclr/runtime/device/rocm/rocvirtual.cpp +++ b/projects/clr/rocclr/runtime/device/rocm/rocvirtual.cpp @@ -605,6 +605,9 @@ VirtualGPU::~VirtualGPU() { virtualQueue_->release(); } + // Lock the device to make the following thread safe + amd::ScopedLock lock(roc_device_.vgpusAccess()); + --roc_device_.numOfVgpus_; // Virtual gpu unique index decrementing roc_device_.vgpus_.erase(roc_device_.vgpus_.begin() + index()); for (uint idx = index(); idx < roc_device_.vgpus().size(); ++idx) {