From c3c1618db727f4a02f3ad599b0e9444c8d38a3e5 Mon Sep 17 00:00:00 2001 From: Philip Yang Date: Wed, 21 Jul 2021 17:16:01 -0400 Subject: [PATCH] kfdtest: query userptr pointer alloc flags Test if query userptr pointer info return correct alloc flags, CoarseGrain by default. Test if query hsaKmtAllocMemory pointer info return correct alloc CoarseGrain flags. Change-Id: If3a1175645717e5d7c475d6ff35b02d6876a1f7c Signed-off-by: Philip Yang --- tests/kfdtest/src/KFDMemoryTest.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tests/kfdtest/src/KFDMemoryTest.cpp b/tests/kfdtest/src/KFDMemoryTest.cpp index 0e4c58a067..9f62727cff 100644 --- a/tests/kfdtest/src/KFDMemoryTest.cpp +++ b/tests/kfdtest/src/KFDMemoryTest.cpp @@ -1389,6 +1389,7 @@ TEST_F(KFDMemoryTest, QueryPointerInfo) { EXPECT_EQ(ptrInfo.CPUAddress, hostBuffer.As()); EXPECT_EQ(ptrInfo.GPUAddress, (HSAuint64)hostBuffer.As()); EXPECT_EQ(ptrInfo.SizeInBytes, (HSAuint64)hostBuffer.Size()); + EXPECT_EQ(ptrInfo.MemFlags.ui32.CoarseGrain, 0); if (is_dgpu()) { EXPECT_EQ((HSAuint64)ptrInfo.NMappedNodes, nGPU); // Check NMappedNodes again after unmapping the memory @@ -1407,6 +1408,7 @@ TEST_F(KFDMemoryTest, QueryPointerInfo) { EXPECT_EQ(ptrInfo.CPUAddress, localBuffer.As()); EXPECT_EQ(ptrInfo.GPUAddress, (HSAuint64)localBuffer.As()); EXPECT_EQ(ptrInfo.SizeInBytes, (HSAuint64)localBuffer.Size()); + EXPECT_EQ(ptrInfo.MemFlags.ui32.CoarseGrain, 1); HSAuint32 *addr = localBuffer.As() + 4; EXPECT_SUCCESS(hsaKmtQueryPointerInfo(reinterpret_cast(addr), &ptrInfo)); @@ -1425,6 +1427,7 @@ TEST_F(KFDMemoryTest, QueryPointerInfo) { EXPECT_EQ(ptrInfo.SizeInBytes, sizeof(HSAuint32)*2); EXPECT_EQ(ptrInfo.NRegisteredNodes, 0); EXPECT_EQ(ptrInfo.NMappedNodes, nGPU); + EXPECT_EQ(ptrInfo.MemFlags.ui32.CoarseGrain, 1); // Register to nodes HSAuint32 nodes[nGPU]; for (unsigned int i = 0; i < nGPU; i++)