fix: Do not defer external hostptr destroy

Resolves: NEO-12567

Signed-off-by: Lukasz Jobczyk <lukasz.jobczyk@intel.com>
This commit is contained in:
Lukasz Jobczyk
2024-09-17 14:05:34 +00:00
committed by Compute-Runtime-Automation
parent fb6e02a53d
commit 64c935a594
3 changed files with 15 additions and 8 deletions

View File

@@ -4037,16 +4037,23 @@ struct WddmMemoryManagerWithAsyncDeleterTest : public ::testing::Test {
WddmMock *wddm;
};
TEST_F(WddmMemoryManagerWithAsyncDeleterTest, givenWddmWhenAsyncDeleterIsEnabledThenDoNotDeferExternalHostptrDeletions) {
EXPECT_EQ(0, deleter->deferDeletionCalled);
memoryManager->tryDeferDeletions(nullptr, 0, 0, 0, AllocationType::externalHostPtr);
EXPECT_EQ(0, deleter->deferDeletionCalled);
EXPECT_EQ(1u, wddm->destroyAllocationResult.called);
}
TEST_F(WddmMemoryManagerWithAsyncDeleterTest, givenWddmWhenAsyncDeleterIsEnabledThenCanDeferDeletions) {
EXPECT_EQ(0, deleter->deferDeletionCalled);
memoryManager->tryDeferDeletions(nullptr, 0, 0, 0);
memoryManager->tryDeferDeletions(nullptr, 0, 0, 0, AllocationType::unknown);
EXPECT_EQ(1, deleter->deferDeletionCalled);
EXPECT_EQ(1u, wddm->destroyAllocationResult.called);
}
TEST_F(WddmMemoryManagerWithAsyncDeleterTest, givenWddmWhenAsyncDeleterIsDisabledThenCannotDeferDeletions) {
memoryManager->setDeferredDeleter(nullptr);
memoryManager->tryDeferDeletions(nullptr, 0, 0, 0);
memoryManager->tryDeferDeletions(nullptr, 0, 0, 0, AllocationType::unknown);
EXPECT_EQ(1u, wddm->destroyAllocationResult.called);
}