@@ -2116,6 +2116,30 @@ TEST_F(CommandQueueWithTimestampPacketTests, givenOutOfOrderQueueWhenSetupBarrie
21162116 EXPECT_EQ (queue.bcsTimestampPacketContainers .size (), barrierNode->refCountFetchSub (0 ));
21172117}
21182118
2119+ TEST_F (CommandQueueWithTimestampPacketTests, givenOutOfOrderQueueWhenSetupBarrierTimestampForBcsEnginesAndOverwritePreviousOneThenEnsureBarrierNodeHasDataAssigned) {
2120+ const cl_queue_properties props[3 ] = {CL_QUEUE_PROPERTIES, CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE, 0 };
2121+ MockContext context{};
2122+ MockCommandQueue queue{&context, context.getDevice (0 ), props, false };
2123+ TimestampPacketDependencies dependencies{};
2124+ queue.getGpgpuCommandStreamReceiver ().requestStallingCommandsOnNextFlush ();
2125+ for (auto &containers : queue.bcsTimestampPacketContainers ) {
2126+ EXPECT_TRUE (containers.lastBarrierToWaitFor .peekNodes ().empty ());
2127+ }
2128+
2129+ queue.setupBarrierTimestampForBcsEngines (aub_stream::EngineType::ENGINE_BCS, dependencies);
2130+ EXPECT_EQ (1u , dependencies.barrierNodes .peekNodes ().size ());
2131+ auto barrierNode = dependencies.barrierNodes .peekNodes ()[0 ];
2132+ EXPECT_EQ (1u , barrierNode->getContextEndValue (0u ));
2133+ dependencies.moveNodesToNewContainer (*queue.getDeferredTimestampPackets ());
2134+ queue.getGpgpuCommandStreamReceiver ().requestStallingCommandsOnNextFlush ();
2135+
2136+ queue.setupBarrierTimestampForBcsEngines (aub_stream::EngineType::ENGINE_BCS, dependencies);
2137+ EXPECT_NE (1u , barrierNode->getContextEndValue (0u ));
2138+ EXPECT_EQ (1u , dependencies.barrierNodes .peekNodes ().size ());
2139+ barrierNode = dependencies.barrierNodes .peekNodes ()[0 ];
2140+ EXPECT_EQ (1u , barrierNode->getContextEndValue (0u ));
2141+ }
2142+
21192143TEST_F (CommandQueueWithTimestampPacketTests, givenOutOfOrderQueueWhenSetupBarrierTimestampForBcsEnginesCalledOnNonBcsEngineThenEnsureBarrierNodeIsPresentAndSaveItForBcses) {
21202144 const cl_queue_properties props[3 ] = {CL_QUEUE_PROPERTIES, CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE, 0 };
21212145 MockContext context{};
0 commit comments