Fix locking resource logic for enqueue read/write buffer call

Change-Id: I261ed4904d617a2f4600ea2a5ec7fd34f534c191
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
This commit is contained in:
Mateusz Jablonski
2019-04-09 13:16:36 +02:00
parent 5034c03f7c
commit 91a64c8518
4 changed files with 8 additions and 4 deletions

View File

@@ -41,7 +41,7 @@ cl_int CommandQueueHw<GfxFamily>::enqueueReadBuffer(
buffer->isReadWriteOnCpuAllowed(blockingRead, numEventsInWaitList, ptr, size)) &&
context->getDevice(0)->getDeviceInfo().cpuCopyAllowed) {
if (!isMemTransferNeeded) {
TransferProperties transferProperties(buffer, CL_COMMAND_MARKER, 0, true, &offset, &size, ptr, true);
TransferProperties transferProperties(buffer, CL_COMMAND_MARKER, 0, true, &offset, &size, ptr, false);
EventsRequest eventsRequest(numEventsInWaitList, eventWaitList, event);
cpuDataTransferHandler(transferProperties, eventsRequest, retVal);
if (event) {
@@ -54,7 +54,7 @@ cl_int CommandQueueHw<GfxFamily>::enqueueReadBuffer(
}
return retVal;
}
TransferProperties transferProperties(buffer, CL_COMMAND_READ_BUFFER, 0, true, &offset, &size, ptr, false);
TransferProperties transferProperties(buffer, CL_COMMAND_READ_BUFFER, 0, true, &offset, &size, ptr, true);
EventsRequest eventsRequest(numEventsInWaitList, eventWaitList, event);
cpuDataTransferHandler(transferProperties, eventsRequest, retVal);
return retVal;