Skip to content

Commit 3c59bae

Browse files
Set NoGfxMemory in Gmm Constructor
Change-Id: Iee36e6de82db12c84970e68e1c940b67ec957eab
1 parent eb6710f commit 3c59bae

File tree

2 files changed

+18
-2
lines changed

2 files changed

+18
-2
lines changed

runtime/gmm_helper/gmm.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (C) 2018 Intel Corporation
2+
* Copyright (C) 2018-2019 Intel Corporation
33
*
44
* SPDX-License-Identifier: MIT
55
*
@@ -37,6 +37,8 @@ Gmm::Gmm(const void *alignedPtr, size_t alignedSize, bool uncacheable, bool pref
3737
resourceParams.Flags.Info.ExistingSysMem = 1;
3838
resourceParams.pExistingSysMem = reinterpret_cast<GMM_VOIDPTR64>(alignedPtr);
3939
resourceParams.ExistingSysMemSize = alignedSize;
40+
} else {
41+
resourceParams.NoGfxMemory = 1u;
4042
}
4143

4244
if (resourceParams.BaseWidth >= GmmHelper::maxPossiblePitch) {

unit_tests/gmm_helper/gmm_helper_tests.cpp

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (C) 2017-2018 Intel Corporation
2+
* Copyright (C) 2017-2019 Intel Corporation
33
*
44
* SPDX-License-Identifier: MIT
55
*
@@ -177,6 +177,20 @@ TEST_F(GmmTests, validImageTypeQuery) {
177177
EXPECT_EQ(queryGmm->resourceParams.Flags.Wa.__ForceOtherHVALIGN4, 1u);
178178
}
179179

180+
TEST_F(GmmTests, givenNullptrWhenGmmConstructorIsCalledThenNoGfxMemoryIsProperlySet) {
181+
void *pSysMem = nullptr;
182+
std::unique_ptr<Gmm> gmm(new Gmm(pSysMem, 4096, false));
183+
184+
EXPECT_EQ(gmm->resourceParams.NoGfxMemory, 1u);
185+
}
186+
187+
TEST_F(GmmTests, givenPtrWhenGmmConstructorIsCalledThenNoGfxMemoryIsProperlySet) {
188+
void *pSysMem = reinterpret_cast<void *>(0x1111);
189+
std::unique_ptr<Gmm> gmm(new Gmm(pSysMem, 4096, false));
190+
191+
EXPECT_EQ(gmm->resourceParams.NoGfxMemory, 0u);
192+
}
193+
180194
TEST_F(GmmTests, given2DimageFromBufferParametersWhenGmmResourceIsCreatedThenItHasDesiredPitchAndSize) {
181195
cl_image_desc imgDesc{};
182196
imgDesc.image_type = CL_MEM_OBJECT_IMAGE2D;

0 commit comments

Comments
 (0)