fix(ocl): finish in release ogl object if needed

Finish cache flushes before exiting api call if releasing displayable
ogl object or dcflush is mitigated.

Related-To: NEO-11694

Signed-off-by: Dominik Dabek <dominik.dabek@intel.com>
This commit is contained in:
Dominik Dabek
2024-07-16 10:18:29 +00:00
committed by Compute-Runtime-Automation
parent 585caab757
commit fc9de71feb
6 changed files with 66 additions and 38 deletions

View File

@@ -640,6 +640,11 @@ cl_int CommandQueue::enqueueReleaseSharedObjects(cl_uint numObjects, const cl_me
if (this->getDevice().getProductHelper().isDcFlushMitigated() || isDisplayableReleased) {
this->getGpgpuCommandStreamReceiver().registerDcFlushForDcMitigation();
this->getGpgpuCommandStreamReceiver().sendRenderStateCacheFlush();
{
TakeOwnershipWrapper<CommandQueue> queueOwnership(*this);
this->taskCount = this->getGpgpuCommandStreamReceiver().peekTaskCount();
}
this->finish();
} else if (isImageReleased) {
this->getGpgpuCommandStreamReceiver().sendRenderStateCacheFlush();
}