P4 to Git Change 1492748 by gandryey@gera-w8 on 2017/12/11 11:53:55

SWDEV-139828 - [OCL] OCL runtime hang in multithread app
	- This issue is a regression after Davinci optimizations. Execution lock should be applied for the engine's wait only, since the resource cache has own lock protection that can conflict with the execution lock

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.cpp#65 edit


[ROCm/clr commit: 175f01c420]
Этот коммит содержится в:
foreman
2017-12-11 11:59:15 -05:00
родитель b225c2d5d6
Коммит bf66d7bc03
+6 -3
Просмотреть файл
@@ -2716,9 +2716,12 @@ bool VirtualGPU::waitAllEngines(CommandBatch* cb) {
}
void VirtualGPU::waitEventLock(CommandBatch* cb) {
// Make sure VirtualGPU has an exclusive access to the resources
amd::ScopedLock lock(execution());
bool earlyDone = waitAllEngines(cb);
bool earlyDone = false;
{
// Make sure VirtualGPU has an exclusive access to the resources
amd::ScopedLock lock(execution());
earlyDone = waitAllEngines(cb);
}
// Free resource cache if we have too many entries
//! \note we do it here, when all engines are idle,