@@ -56,17 +56,26 @@ HWTEST2_F(CopyOffloadInOrderTests, givenDebugFlagSetWhenCreatingCmdListThenEnabl
5656 cmdQueueDesc.flags = ZE_COMMAND_QUEUE_FLAG_IN_ORDER;
5757 cmdQueueDesc.mode = ZE_COMMAND_QUEUE_MODE_ASYNCHRONOUS;
5858
59+ auto dcFlushRequired = device->getProductHelper ().isDcFlushAllowed ();
60+
5961 {
6062 EXPECT_EQ (ZE_RESULT_SUCCESS, zeCommandListCreateImmediate (context, device, &cmdQueueDesc, &cmdListHandle));
6163 auto cmdList = static_cast <WhiteBox<L0::CommandListCoreFamilyImmediate<gfxCoreFamily>> *>(CommandList::fromHandle (cmdListHandle));
62- EXPECT_TRUE (cmdList->copyOperationOffloadEnabled );
63- EXPECT_NE (nullptr , cmdList->cmdQImmediateCopyOffload );
6464
65- auto queue = static_cast <WhiteBox<L0::CommandQueue> *>(cmdList->cmdQImmediateCopyOffload );
66- EXPECT_EQ (cmdQueueDesc.priority , queue->desc .priority );
67- EXPECT_EQ (cmdQueueDesc.mode , queue->desc .mode );
68- EXPECT_TRUE (queue->peekIsCopyOnlyCommandQueue ());
69- EXPECT_TRUE (NEO::EngineHelpers::isBcs (queue->getCsr ()->getOsContext ().getEngineType ()));
65+ if (dcFlushRequired) {
66+ EXPECT_FALSE (cmdList->copyOperationOffloadEnabled );
67+ EXPECT_EQ (nullptr , cmdList->cmdQImmediateCopyOffload );
68+ } else {
69+
70+ EXPECT_TRUE (cmdList->copyOperationOffloadEnabled );
71+ EXPECT_NE (nullptr , cmdList->cmdQImmediateCopyOffload );
72+
73+ auto queue = static_cast <WhiteBox<L0::CommandQueue> *>(cmdList->cmdQImmediateCopyOffload );
74+ EXPECT_EQ (cmdQueueDesc.priority , queue->desc .priority );
75+ EXPECT_EQ (cmdQueueDesc.mode , queue->desc .mode );
76+ EXPECT_TRUE (queue->peekIsCopyOnlyCommandQueue ());
77+ EXPECT_TRUE (NEO::EngineHelpers::isBcs (queue->getCsr ()->getOsContext ().getEngineType ()));
78+ }
7079
7180 zeCommandListDestroy (cmdListHandle);
7281 }
@@ -77,14 +86,20 @@ HWTEST2_F(CopyOffloadInOrderTests, givenDebugFlagSetWhenCreatingCmdListThenEnabl
7786
7887 EXPECT_EQ (ZE_RESULT_SUCCESS, zeCommandListCreateImmediate (context, device, &cmdQueueDesc, &cmdListHandle));
7988 auto cmdList = static_cast <WhiteBox<L0::CommandListCoreFamilyImmediate<gfxCoreFamily>> *>(CommandList::fromHandle (cmdListHandle));
80- EXPECT_TRUE (cmdList->copyOperationOffloadEnabled );
81- EXPECT_NE (nullptr , cmdList->cmdQImmediateCopyOffload );
8289
83- auto queue = static_cast <WhiteBox<L0::CommandQueue> *>(cmdList->cmdQImmediateCopyOffload );
84- EXPECT_EQ (cmdQueueDesc.priority , queue->desc .priority );
85- EXPECT_EQ (cmdQueueDesc.mode , queue->desc .mode );
86- EXPECT_TRUE (queue->peekIsCopyOnlyCommandQueue ());
87- EXPECT_TRUE (NEO::EngineHelpers::isBcs (queue->getCsr ()->getOsContext ().getEngineType ()));
90+ if (dcFlushRequired) {
91+ EXPECT_FALSE (cmdList->copyOperationOffloadEnabled );
92+ EXPECT_EQ (nullptr , cmdList->cmdQImmediateCopyOffload );
93+ } else {
94+ EXPECT_TRUE (cmdList->copyOperationOffloadEnabled );
95+ EXPECT_NE (nullptr , cmdList->cmdQImmediateCopyOffload );
96+
97+ auto queue = static_cast <WhiteBox<L0::CommandQueue> *>(cmdList->cmdQImmediateCopyOffload );
98+ EXPECT_EQ (cmdQueueDesc.priority , queue->desc .priority );
99+ EXPECT_EQ (cmdQueueDesc.mode , queue->desc .mode );
100+ EXPECT_TRUE (queue->peekIsCopyOnlyCommandQueue ());
101+ EXPECT_TRUE (NEO::EngineHelpers::isBcs (queue->getCsr ()->getOsContext ().getEngineType ()));
102+ }
88103
89104 zeCommandListDestroy (cmdListHandle);
90105
@@ -145,11 +160,19 @@ HWTEST2_F(CopyOffloadInOrderTests, givenQueueDescriptorWhenCreatingCmdListThenEn
145160
146161 cmdQueueDesc.pNext = ©OffloadDesc;
147162
163+ auto dcFlushRequired = device->getProductHelper ().isDcFlushAllowed ();
164+
148165 {
149166 EXPECT_EQ (ZE_RESULT_SUCCESS, zeCommandListCreateImmediate (context, device, &cmdQueueDesc, &cmdListHandle));
150167 auto cmdList = static_cast <WhiteBox<L0::CommandListCoreFamilyImmediate<gfxCoreFamily>> *>(CommandList::fromHandle (cmdListHandle));
151- EXPECT_TRUE (cmdList->copyOperationOffloadEnabled );
152- EXPECT_NE (nullptr , cmdList->cmdQImmediateCopyOffload );
168+
169+ if (dcFlushRequired) {
170+ EXPECT_FALSE (cmdList->copyOperationOffloadEnabled );
171+ EXPECT_EQ (nullptr , cmdList->cmdQImmediateCopyOffload );
172+ } else {
173+ EXPECT_TRUE (cmdList->copyOperationOffloadEnabled );
174+ EXPECT_NE (nullptr , cmdList->cmdQImmediateCopyOffload );
175+ }
153176
154177 zeCommandListDestroy (cmdListHandle);
155178 }
0 commit comments