SWDEV-232807

[ROCm][TCT][HIP] cooperative stream test case is failing.

Make sure lockXfer() in the blit manager returns a valid value.
Port the latest PAL backend logic into the ROCr backend.
This change doesn't fix the issue, reported in the ticket.

Change-Id: I54101a824f49a2dcfbbf5414cb5b3af41745306d


[ROCm/clr commit: 89133a7301]
This commit is contained in:
German Andryeyev
2020-04-23 15:01:02 -04:00
parent cd75ef7208
commit 715425d074
3 changed files with 7 additions and 12 deletions
@@ -2300,15 +2300,15 @@ bool VirtualGPU::submitKernelInternal(const amd::NDRangeContainer& sizes, const
*/
void VirtualGPU::submitKernel(amd::NDRangeKernelCommand& vcmd) {
if (vcmd.cooperativeGroups() || vcmd.cooperativeMultiDeviceGroups()) {
// Wait for the execution on the current queue, since the coop groups will use the device queue
releaseGpuMemoryFence();
// Get device queue for exclusive GPU access
VirtualGPU* queue = dev().xferQueue();
// Lock the queue, using the blit manager lock
amd::ScopedLock lock(queue->blitMgr().lockXfer());
// Wait for the execution on the current queue, since the coop groups will use the device queue
releaseGpuMemoryFence();
queue->profilingBegin(vcmd);
if (vcmd.cooperativeGroups()) {