From c36d89754afdffb8cba659fa79d761aac465d92d Mon Sep 17 00:00:00 2001 From: foreman Date: Wed, 1 Feb 2017 11:21:13 -0500 Subject: [PATCH] P4 to Git Change 1367952 by gandryey@gera-w8 on 2017/02/01 11:11:26 SWDEV-112171 - [ROCm CQE][OCLonLC][QR][G] System hangs/Failures observed with few WF conf tests, due to CL#1364923 - Back out changelist 1367810. A hang was delayed, but still occured much later in the test. Affected files ... ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocblit.cpp#11 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#40 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.hpp#16 edit --- rocclr/runtime/device/rocm/rocblit.cpp | 5 ----- rocclr/runtime/device/rocm/rocdevice.cpp | 7 ------- rocclr/runtime/device/rocm/rocdevice.hpp | 6 ------ 3 files changed, 18 deletions(-) diff --git a/rocclr/runtime/device/rocm/rocblit.cpp b/rocclr/runtime/device/rocm/rocblit.cpp index 3e4e753295..c4a9210ebb 100644 --- a/rocclr/runtime/device/rocm/rocblit.cpp +++ b/rocclr/runtime/device/rocm/rocblit.cpp @@ -616,9 +616,6 @@ bool DmaBlitManager::hsaCopy( bool enableCopyRect, bool flushDMA) const { - // todo integerops long_math test exposes - // a HW hang without lock protection. note: Runtime kernel copy works fine - amd::ScopedLock k(dev().hsaCopyOps()); address src = reinterpret_cast
(srcMemory.getDeviceMemory()); address dst = reinterpret_cast
(dstMemory.getDeviceMemory()); @@ -666,8 +663,6 @@ bool DmaBlitManager::hsaCopy( bool DmaBlitManager::hsaCopyStaged( const_address hostSrc, address hostDst, size_t size, address staging, bool hostToDev) const { - amd::ScopedLock k(dev().hsaCopyOps()); - // No allocation is necessary for Full Profile hsa_status_t status; if (dev().agent_profile() == HSA_PROFILE_FULL) { diff --git a/rocclr/runtime/device/rocm/rocdevice.cpp b/rocclr/runtime/device/rocm/rocdevice.cpp index 359e865b61..84dd70f527 100644 --- a/rocclr/runtime/device/rocm/rocdevice.cpp +++ b/rocclr/runtime/device/rocm/rocdevice.cpp @@ -189,7 +189,6 @@ Device::Device(hsa_agent_t bkendDevice) , xferQueue_(nullptr) , xferRead_(nullptr) , xferWrite_(nullptr) - , hsaCopyOps_(nullptr) , numOfVgpus_(0) { group_segment_.handle = 0; @@ -208,7 +207,6 @@ Device::~Device() } delete mapCache_; delete mapCacheOps_; - delete hsaCopyOps_; // Destroy temporary buffers for read/write delete xferRead_; @@ -628,11 +626,6 @@ Device::create() return false; } - hsaCopyOps_ = new amd::Monitor("HSA copy Lock", true); - if (nullptr == hsaCopyOps_) { - return false; - } - mapCache_ = new std::vector(); if (mapCache_ == NULL) { return false; diff --git a/rocclr/runtime/device/rocm/rocdevice.hpp b/rocclr/runtime/device/rocm/rocdevice.hpp index 2d8a8109e6..ed12234cd9 100644 --- a/rocclr/runtime/device/rocm/rocdevice.hpp +++ b/rocclr/runtime/device/rocm/rocdevice.hpp @@ -411,8 +411,6 @@ public: amd::Memory* mem //!< Pointer to AMD memory object ) const; - amd::Monitor& hsaCopyOps() const { return *hsaCopyOps_; } - private: static hsa_ven_amd_loader_1_00_pfn_t amd_loader_ext_table; @@ -441,10 +439,6 @@ private: XferBuffers* xferRead_; //!< Transfer buffers read XferBuffers* xferWrite_; //!< Transfer buffers write - //! todo it shouldn't require a lock proteciton, - //! but currently it causes a HW hang in MT environment - amd::Monitor* hsaCopyOps_; //!< HSA copy is protected under lock - public: amd::Atomic numOfVgpus_; //!< Virtual gpu unique index }; // class roc::Device