diff --git a/level_zero/core/source/event/event_impl.inl b/level_zero/core/source/event/event_impl.inl index e556ca32cf..316a12fe34 100644 --- a/level_zero/core/source/event/event_impl.inl +++ b/level_zero/core/source/event/event_impl.inl @@ -11,6 +11,7 @@ #include "shared/source/debug_settings/debug_settings_manager.h" #include "shared/source/device/sub_device.h" #include "shared/source/helpers/basic_math.h" +#include "shared/source/helpers/compiler_product_helper.h" #include "shared/source/helpers/hw_info.h" #include "shared/source/memory_manager/internal_allocation_storage.h" #include "shared/source/memory_manager/memory_operations_handler.h" @@ -665,7 +666,7 @@ ze_result_t EventImp::hostSynchronize(uint64_t timeout) { } TaskCountType taskCountToWaitForL3Flush = 0; - if (((this->isCounterBased() && this->inOrderTimestampNode) || this->mitigateHostVisibleSignal) && this->device->getProductHelper().isDcFlushAllowed()) { + if (((this->isCounterBased() && this->inOrderTimestampNode) || this->mitigateHostVisibleSignal) && this->device->getProductHelper().isDcFlushAllowed() && !this->device->getCompilerProductHelper().isHeaplessModeEnabled()) { auto lock = this->csrs[0]->obtainUniqueOwnership(); this->csrs[0]->flushTagUpdate(); taskCountToWaitForL3Flush = this->csrs[0]->peekLatestFlushedTaskCount(); @@ -677,7 +678,7 @@ ze_result_t EventImp::hostSynchronize(uint64_t timeout) { const bool fenceWait = isKmdWaitModeEnabled() && isCounterBased() && csrs[0]->waitUserFenceSupported(); do { - if (this->isCounterBased() && this->inOrderTimestampNode) { + if (this->isCounterBased() && this->inOrderTimestampNode && !this->device->getCompilerProductHelper().isHeaplessModeEnabled()) { synchronizeTimestampCompletionWithTimeout(); if (this->isTimestampPopulated()) { inOrderExecInfo->setLastWaitedCounterValue(getInOrderExecSignalValueWithSubmissionCounter()); diff --git a/level_zero/core/test/unit_tests/sources/cmdlist/test_in_order_cmdlist_1.cpp b/level_zero/core/test/unit_tests/sources/cmdlist/test_in_order_cmdlist_1.cpp index 4834aba44c..1969449913 100644 --- a/level_zero/core/test/unit_tests/sources/cmdlist/test_in_order_cmdlist_1.cpp +++ b/level_zero/core/test/unit_tests/sources/cmdlist/test_in_order_cmdlist_1.cpp @@ -5345,9 +5345,11 @@ HWTEST2_F(InOrderCmdListTests, givenCounterBasedTimestampHostVisibleSignalWhenCa auto eventObj = Event::fromHandle(handle); *static_cast(ptrOffset(eventObj->getHostAddress(), eventObj->getContextEndOffset())) = Event::State::STATE_SIGNALED; + auto hostAddress = static_cast(immCmdList->inOrderExecInfo->getBaseHostAddress()); + *hostAddress = 1u; EXPECT_EQ(ZE_RESULT_SUCCESS, eventObj->hostSynchronize(-1)); - if (device->getProductHelper().isDcFlushAllowed()) { + if (device->getProductHelper().isDcFlushAllowed() && !immCmdList->isHeaplessModeEnabled()) { EXPECT_TRUE(ultCsr->waitForTaskCountCalled); EXPECT_TRUE(ultCsr->flushTagUpdateCalled); } else {