Flush command queue in release call

Related-To: NEO-5258
Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
This commit is contained in:
Mateusz Hoppe
2020-11-03 16:27:43 +01:00
committed by Compute-Runtime-Automation
parent 1f462eb9c2
commit 264d103774
3 changed files with 28 additions and 0 deletions

View File

@@ -50,6 +50,18 @@ void releaseQueue(cl_command_queue commandQueue, cl_int &retVal) {
}
}
template <>
inline void releaseQueue<CommandQueue>(cl_command_queue commandQueue, cl_int &retVal) {
using BaseType = typename CommandQueue::BaseType;
auto queue = castToObject<CommandQueue>(static_cast<BaseType *>(commandQueue));
if (queue) {
queue->flush();
releaseVirtualEvent(*queue);
queue->release();
retVal = CL_SUCCESS;
}
}
template <typename QueueType>
cl_int getQueueInfo(QueueType *queue,
cl_command_queue_info paramName,