Fix address programming in appendSignalEvent

Signed-off-by: Aravind Gopalakrishnan <aravind.gopalakrishnan@intel.com>
This commit is contained in:
Aravind Gopalakrishnan 2021-06-25 03:10:15 +00:00 committed by Compute-Runtime-Automation
parent 6b862b60ca
commit d2ff46e011
2 changed files with 7 additions and 3 deletions

View File

@ -1605,8 +1605,9 @@ ze_result_t CommandListCoreFamily<gfxCoreFamily>::appendSignalEvent(ze_event_han
} else {
using MI_STORE_DATA_IMM = typename GfxFamily::MI_STORE_DATA_IMM;
MI_STORE_DATA_IMM storeDataImmediate = GfxFamily::cmdInitStoreDataImm;
storeDataImmediate.setAddress(ptrOffset(baseAddr, eventSignalOffset));
storeDataImmediate.setStoreQword(false);
storeDataImmediate.setDwordLength(MI_STORE_DATA_IMM::DWORD_LENGTH::DWORD_LENGTH_STORE_QWORD);
storeDataImmediate.setDwordLength(MI_STORE_DATA_IMM::DWORD_LENGTH::DWORD_LENGTH_STORE_DWORD);
storeDataImmediate.setDataDword0(Event::STATE_SIGNALED);
auto buffer = commandContainer.getCommandStream()->template getSpaceForCmd<MI_STORE_DATA_IMM>();
*buffer = storeDataImmediate;

View File

@ -36,8 +36,11 @@ HWTEST_F(CommandListAppendSignalEvent, WhenAppendingSignalEventWithoutScopeThenM
ASSERT_TRUE(FamilyType::PARSE::parseCommandBuffer(
cmdList, ptrOffset(commandList->commandContainer.getCommandStream()->getCpuBase(), 0), usedSpaceAfter));
auto itor = findAll<MI_STORE_DATA_IMM *>(cmdList.begin(), cmdList.end());
ASSERT_NE(0u, itor.size());
auto baseAddr = event->getGpuAddress(device);
auto itor = find<MI_STORE_DATA_IMM *>(cmdList.begin(), cmdList.end());
EXPECT_NE(cmdList.end(), itor);
auto cmd = genCmdCast<MI_STORE_DATA_IMM *>(*itor);
EXPECT_EQ(cmd->getAddress(), baseAddr);
}
HWTEST_F(CommandListAppendSignalEvent, givenCmdlistWhenAppendingSignalEventThenEventPoolGraphicsAllocationIsAddedToResidencyContainer) {