diff --git a/runtime/command_queue/enqueue_read_buffer.h b/runtime/command_queue/enqueue_read_buffer.h index a898fd4ebb..8d8e1b7d0c 100644 --- a/runtime/command_queue/enqueue_read_buffer.h +++ b/runtime/command_queue/enqueue_read_buffer.h @@ -41,7 +41,7 @@ cl_int CommandQueueHw::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::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; diff --git a/runtime/command_queue/enqueue_write_buffer.h b/runtime/command_queue/enqueue_write_buffer.h index addcf0bf55..ac61ca0394 100644 --- a/runtime/command_queue/enqueue_write_buffer.h +++ b/runtime/command_queue/enqueue_write_buffer.h @@ -38,7 +38,7 @@ cl_int CommandQueueHw::enqueueWriteBuffer( buffer->isReadWriteOnCpuAllowed(blockingWrite, numEventsInWaitList, const_cast(ptr), size)) && context->getDevice(0)->getDeviceInfo().cpuCopyAllowed) { if (!isMemTransferNeeded) { - TransferProperties transferProperties(buffer, CL_COMMAND_MARKER, 0, true, &offset, &size, const_cast(ptr), true); + TransferProperties transferProperties(buffer, CL_COMMAND_MARKER, 0, true, &offset, &size, const_cast(ptr), false); EventsRequest eventsRequest(numEventsInWaitList, eventWaitList, event); cpuDataTransferHandler(transferProperties, eventsRequest, retVal); @@ -52,7 +52,7 @@ cl_int CommandQueueHw::enqueueWriteBuffer( } return retVal; } - TransferProperties transferProperties(buffer, CL_COMMAND_WRITE_BUFFER, 0, true, &offset, &size, const_cast(ptr), false); + TransferProperties transferProperties(buffer, CL_COMMAND_WRITE_BUFFER, 0, true, &offset, &size, const_cast(ptr), true); EventsRequest eventsRequest(numEventsInWaitList, eventWaitList, event); cpuDataTransferHandler(transferProperties, eventsRequest, retVal); return retVal; diff --git a/unit_tests/command_queue/enqueue_read_buffer_tests.cpp b/unit_tests/command_queue/enqueue_read_buffer_tests.cpp index 0b4b25b966..44b5fbb3a1 100644 --- a/unit_tests/command_queue/enqueue_read_buffer_tests.cpp +++ b/unit_tests/command_queue/enqueue_read_buffer_tests.cpp @@ -507,6 +507,7 @@ HWTEST_F(EnqueueReadBufferTypeTest, givenForcedCpuCopyWhenEnqueueReadCompressedB nullptr); EXPECT_EQ(CL_SUCCESS, retVal); + EXPECT_FALSE(buffer->getGraphicsAllocation()->isLocked()); EXPECT_FALSE(mockCmdQ->cpuDataTransferHandlerCalled); buffer->getGraphicsAllocation()->setAllocationType(GraphicsAllocation::AllocationType::BUFFER); @@ -521,6 +522,7 @@ HWTEST_F(EnqueueReadBufferTypeTest, givenForcedCpuCopyWhenEnqueueReadCompressedB nullptr); EXPECT_EQ(CL_SUCCESS, retVal); + EXPECT_TRUE(buffer->getGraphicsAllocation()->isLocked()); EXPECT_TRUE(mockCmdQ->cpuDataTransferHandlerCalled); } diff --git a/unit_tests/command_queue/enqueue_write_buffer_tests.cpp b/unit_tests/command_queue/enqueue_write_buffer_tests.cpp index cefe0adc01..c4d4d874e3 100644 --- a/unit_tests/command_queue/enqueue_write_buffer_tests.cpp +++ b/unit_tests/command_queue/enqueue_write_buffer_tests.cpp @@ -416,6 +416,7 @@ HWTEST_F(EnqueueWriteBufferTypeTest, givenForcedCpuCopyWhenEnqueueWriteCompresse nullptr); EXPECT_EQ(CL_SUCCESS, retVal); + EXPECT_FALSE(buffer->getGraphicsAllocation()->isLocked()); EXPECT_FALSE(mockCmdQ->cpuDataTransferHandlerCalled); buffer->getGraphicsAllocation()->setAllocationType(GraphicsAllocation::AllocationType::BUFFER); @@ -430,6 +431,7 @@ HWTEST_F(EnqueueWriteBufferTypeTest, givenForcedCpuCopyWhenEnqueueWriteCompresse nullptr); EXPECT_EQ(CL_SUCCESS, retVal); + EXPECT_TRUE(buffer->getGraphicsAllocation()->isLocked()); EXPECT_TRUE(mockCmdQ->cpuDataTransferHandlerCalled); }