fix: set ioq info to regular event only if duplicated host storage
Related-To: NEO-13596 Signed-off-by: Bartosz Dunajski <bartosz.dunajski@intel.com>
This commit is contained in:
parent
c703e0bf6e
commit
dba1204d9e
|
@ -195,7 +195,7 @@ void CommandListCoreFamily<gfxCoreFamily>::handleInOrderDependencyCounter(Event
|
|||
this->commandContainer.addToResidencyContainer(inOrderExecInfo->getHostCounterAllocation());
|
||||
|
||||
if (signalEvent) {
|
||||
if (signalEvent->isCounterBased() || nonWalkerInOrderCmdsChaining || isImmediateType()) {
|
||||
if (signalEvent->isCounterBased() || nonWalkerInOrderCmdsChaining || (isImmediateType() && this->duplicatedInOrderCounterStorageEnabled)) {
|
||||
signalEvent->updateInOrderExecState(inOrderExecInfo, inOrderExecInfo->getCounterValue(), inOrderExecInfo->getAllocationOffset());
|
||||
} else {
|
||||
signalEvent->unsetInOrderExecInfo();
|
||||
|
|
|
@ -201,6 +201,7 @@ struct WhiteBox<L0::CommandListCoreFamilyImmediate<gfxCoreFamily>>
|
|||
using BaseClass::disablePatching;
|
||||
using BaseClass::dispatchEventRemainingPacketsPostSyncOperation;
|
||||
using BaseClass::doubleSbaWa;
|
||||
using BaseClass::duplicatedInOrderCounterStorageEnabled;
|
||||
using BaseClass::enablePatching;
|
||||
using BaseClass::engineGroupType;
|
||||
using BaseClass::eventSignalPipeControl;
|
||||
|
|
|
@ -885,8 +885,19 @@ HWTEST2_F(InOrderCmdListTests, givenInOrderModeWheUsingRegularEventAndImmediateC
|
|||
events[0]->makeCounterBasedImplicitlyDisabled(eventPool->getAllocation());
|
||||
cmdList->appendLaunchKernel(kernel->toHandle(), groupCount, events[0]->toHandle(), 0, nullptr, launchParams, false);
|
||||
EXPECT_FALSE(events[0]->isCounterBased());
|
||||
EXPECT_EQ(events[0]->inOrderExecSignalValue, 1u);
|
||||
EXPECT_NE(events[0]->inOrderExecInfo.get(), nullptr);
|
||||
|
||||
if (cmdList->isInOrderNonWalkerSignalingRequired(events[0].get()) || cmdList->duplicatedInOrderCounterStorageEnabled) {
|
||||
EXPECT_EQ(events[0]->inOrderExecSignalValue, 1u);
|
||||
EXPECT_NE(events[0]->inOrderExecInfo.get(), nullptr);
|
||||
} else {
|
||||
EXPECT_EQ(events[0]->inOrderExecInfo.get(), nullptr);
|
||||
}
|
||||
|
||||
auto tsEventPool = createEvents<FamilyType>(1, true);
|
||||
events[1]->makeCounterBasedImplicitlyDisabled(eventPool->getAllocation());
|
||||
|
||||
cmdList->appendBarrier(events[1]->toHandle(), 0, nullptr, false);
|
||||
EXPECT_EQ(events[1]->inOrderExecInfo.get() != nullptr, cmdList->duplicatedInOrderCounterStorageEnabled);
|
||||
}
|
||||
|
||||
HWTEST2_F(InOrderCmdListTests, givenRegularEventWithInOrderExecInfoWhenReusedOnRegularCmdListThenUnsetInOrderData, MatchAny) {
|
||||
|
|
Loading…
Reference in New Issue