P4 to Git Change 1258779 by gandryey@gera-ocl on 2016/04/15 19:16:15

SWDEV-92245 - [CQE OCL][QR][G] Multiple 32/64 bit Bolt sample crashes on all CPUs. FaultyCL#1257532
	- Bolt calls map/unmap with the same region twice. Add a counter for the same region to track that case

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/device.cpp#195 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.hpp#272 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuvirtual.cpp#401 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palvirtual.cpp#6 edit


[ROCm/clr commit: 6569fba06d]
This commit is contained in:
foreman
2016-04-15 19:22:30 -04:00
parent d54b09efcd
commit fc1d457ca2
4 changed files with 23 additions and 10 deletions
@@ -1179,12 +1179,16 @@ VirtualGPU::submitUnmapMemory(amd::UnmapMemoryCommand& vcmd)
// Make sure VirtualGPU has an exclusive access to the resources
amd::ScopedLock lock(execution());
profilingBegin(vcmd, true);
gpu::Memory* memory = dev().getGpuMemory(&vcmd.memory());
amd::Memory* owner = memory->owner();
bool unmapMip = false;
const device::Memory::WriteMapInfo* writeMapInfo =
memory->writeMapInfo(vcmd.mapPtr());
if (nullptr == writeMapInfo) {
LogError("Unmap without map call");
return;
}
profilingBegin(vcmd, true);
// Check if image is a mipmap and assign a saved view
amd::Image* amdImage = owner->asImage();