Fix TBX completion loop.

- resources are dumped in make non resident call
- in order to dump correct data we need to be sure that GPU is done processing
- waiting needs to be unconditional to handle all cases
- remove not needed parameter to makeSurfacePackNonResident

Change-Id: Ib2b065d486cd3a5d86e599c51b24f3c958c3a10b
This commit is contained in:
Mrozek, Michal
2018-08-02 15:17:58 +02:00
committed by sys_ocldev
parent 1807ea651c
commit 6f251f5ea1
13 changed files with 27 additions and 46 deletions

View File

@@ -1254,7 +1254,7 @@ TEST_F(DrmCommandStreamLeaksTest, givenFragmentedAllocationsWithResuedFragmentsW
EXPECT_EQ(3u, residency->size());
tCsr->makeSurfacePackNonResident(nullptr, false);
tCsr->makeSurfacePackNonResident(nullptr);
//check that each packet is not resident
EXPECT_FALSE(graphicsAllocation->fragmentsStorage.fragmentStorageData[0].residency->resident);
@@ -1276,7 +1276,7 @@ TEST_F(DrmCommandStreamLeaksTest, givenFragmentedAllocationsWithResuedFragmentsW
EXPECT_EQ(3u, residency->size());
tCsr->makeSurfacePackNonResident(nullptr, false);
tCsr->makeSurfacePackNonResident(nullptr);
EXPECT_EQ(0u, residency->size());
@@ -1535,7 +1535,7 @@ TEST_F(DrmCommandStreamLeaksTest, FlushMultipleTimes) {
csr->alignToCacheLine(cs);
BatchBuffer batchBuffer3{cs.getGraphicsAllocation(), 16, 0, nullptr, false, false, QueueThrottle::MEDIUM, cs.getUsed(), &cs};
csr->flush(batchBuffer3, EngineType::ENGINE_RCS, nullptr);
csr->makeSurfacePackNonResident(nullptr, false);
csr->makeSurfacePackNonResident(nullptr);
mm->freeGraphicsMemory(allocation);
mm->freeGraphicsMemory(allocation2);
@@ -1621,7 +1621,7 @@ TEST_F(DrmCommandStreamLeaksTest, MakeResidentClearResidencyAllocationsInMemoryM
EXPECT_NE(0u, mm->getResidencyAllocations().size());
csr->processResidency(nullptr);
csr->makeSurfacePackNonResident(nullptr, false);
csr->makeSurfacePackNonResident(nullptr);
EXPECT_EQ(0u, mm->getResidencyAllocations().size());
mm->freeGraphicsMemory(allocation1);
@@ -1639,7 +1639,7 @@ TEST_F(DrmCommandStreamLeaksTest, givenMultipleMakeResidentWhenMakeNonResidentIs
EXPECT_NE(0u, mm->getResidencyAllocations().size());
csr->processResidency(nullptr);
csr->makeSurfacePackNonResident(nullptr, false);
csr->makeSurfacePackNonResident(nullptr);
EXPECT_EQ(0u, mm->getResidencyAllocations().size());
EXPECT_FALSE(allocation1->isResident());