mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-03 14:55:24 +08:00
fix: track registered CSR clients
In L0 its not possible to track objects relations. For example CmdList may be removed before Event. In such case, Event needs to safely skip unregister call, without accessing CmdList/CmdQueue object. Related-To: NEO-8884 Signed-off-by: Dunajski, Bartosz <bartosz.dunajski@intel.com>
This commit is contained in:
committed by
Compute-Runtime-Automation
parent
ace5e67b51
commit
53f635e392
@@ -1254,11 +1254,12 @@ HWTEST_F(CommandQueueHwTest, givenRelaxedOrderingEnabledWhenCheckingIfAllowedByC
|
||||
EXPECT_FALSE(mockCmdQueueHw.relaxedOrderingForGpgpuAllowed(0));
|
||||
EXPECT_FALSE(mockCmdQueueHw.relaxedOrderingForGpgpuAllowed(1));
|
||||
|
||||
ultCsr.registerClient();
|
||||
int client1, client2;
|
||||
ultCsr.registerClient(&client1);
|
||||
EXPECT_FALSE(mockCmdQueueHw.relaxedOrderingForGpgpuAllowed(0));
|
||||
EXPECT_FALSE(mockCmdQueueHw.relaxedOrderingForGpgpuAllowed(1));
|
||||
|
||||
ultCsr.registerClient();
|
||||
ultCsr.registerClient(&client2);
|
||||
|
||||
EXPECT_FALSE(mockCmdQueueHw.relaxedOrderingForGpgpuAllowed(0));
|
||||
EXPECT_TRUE(mockCmdQueueHw.relaxedOrderingForGpgpuAllowed(1));
|
||||
|
||||
@@ -1138,8 +1138,9 @@ HWTEST2_F(RelaxedOrderingEnqueueKernelTests, givenEnqueueKernelWhenProgrammingDe
|
||||
auto &ultCsr = pDevice->getUltCommandStreamReceiver<FamilyType>();
|
||||
auto directSubmission = new MockDirectSubmissionHw<FamilyType, RenderDispatcher<FamilyType>>(ultCsr);
|
||||
ultCsr.directSubmission.reset(directSubmission);
|
||||
ultCsr.registerClient();
|
||||
ultCsr.registerClient();
|
||||
int client1, client2;
|
||||
ultCsr.registerClient(&client1);
|
||||
ultCsr.registerClient(&client2);
|
||||
|
||||
MockCommandQueueHw<FamilyType> mockCmdQueueHw{context, pClDevice, nullptr};
|
||||
|
||||
@@ -1237,8 +1238,9 @@ HWTEST2_F(RelaxedOrderingEnqueueKernelTests, givenBarrierWithDependenciesWhenFlu
|
||||
auto &ultCsr = pDevice->getUltCommandStreamReceiver<FamilyType>();
|
||||
auto directSubmission = new MockDirectSubmissionHw<FamilyType, RenderDispatcher<FamilyType>>(ultCsr);
|
||||
ultCsr.directSubmission.reset(directSubmission);
|
||||
ultCsr.registerClient();
|
||||
ultCsr.registerClient();
|
||||
int client1, client2;
|
||||
ultCsr.registerClient(&client1);
|
||||
ultCsr.registerClient(&client2);
|
||||
|
||||
MockCommandQueueHw<FamilyType> mockCmdQueueHw{context, pClDevice, nullptr};
|
||||
|
||||
@@ -1284,8 +1286,9 @@ HWTEST2_F(RelaxedOrderingEnqueueKernelTests, givenPipeControlForIoqDependencyRes
|
||||
auto &ultCsr = pDevice->getUltCommandStreamReceiver<FamilyType>();
|
||||
auto directSubmission = new MockDirectSubmissionHw<FamilyType, RenderDispatcher<FamilyType>>(ultCsr);
|
||||
ultCsr.directSubmission.reset(directSubmission);
|
||||
ultCsr.registerClient();
|
||||
ultCsr.registerClient();
|
||||
int client1, client2;
|
||||
ultCsr.registerClient(&client1);
|
||||
ultCsr.registerClient(&client2);
|
||||
|
||||
MockKernelWithInternals mockKernel(*pClDevice);
|
||||
|
||||
@@ -1304,8 +1307,9 @@ HWTEST2_F(RelaxedOrderingEnqueueKernelTests, givenEnqueueWithPipeControlWhenSend
|
||||
auto &ultCsr = pDevice->getUltCommandStreamReceiver<FamilyType>();
|
||||
auto directSubmission = new MockDirectSubmissionHw<FamilyType, RenderDispatcher<FamilyType>>(ultCsr);
|
||||
ultCsr.directSubmission.reset(directSubmission);
|
||||
ultCsr.registerClient();
|
||||
ultCsr.registerClient();
|
||||
int client1, client2;
|
||||
ultCsr.registerClient(&client1);
|
||||
ultCsr.registerClient(&client2);
|
||||
|
||||
ultCsr.recordFlusheBatchBuffer = true;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user