Skip to content

Commit 65ca31d

Browse files
luluu9Compute-Runtime-Automation
authored andcommitted
Remove magic number from createGemExt method
Related-to: NEO-6730 Signed-off-by: Naklicki, Mateusz <mateusz.naklicki@intel.com>
1 parent 8d50aae commit 65ca31d

File tree

14 files changed

+26
-26
lines changed

14 files changed

+26
-26
lines changed

shared/source/os_interface/linux/drm_memory_manager.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1839,7 +1839,7 @@ GraphicsAllocation *DrmMemoryManager::createSharedUnifiedMemoryAllocation(const
18391839
createMemoryRegionsForSharedAllocation(*pHwInfo, *memoryInfo, allocationData, memRegions);
18401840

18411841
uint32_t handle = 0;
1842-
auto ret = memoryInfo->createGemExt(&drm, memRegions, size, handle, std::numeric_limits<uint32_t>::max());
1842+
auto ret = memoryInfo->createGemExt(&drm, memRegions, size, handle, {});
18431843

18441844
if (ret) {
18451845
return nullptr;

shared/source/os_interface/linux/ioctl_helper.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ class IoctlHelper {
7171
virtual IoctlHelper *clone() = 0;
7272

7373
virtual bool isVmBindAvailable(Drm *drm) = 0;
74-
virtual uint32_t createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, uint32_t vmId) = 0;
74+
virtual uint32_t createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, std::optional<uint32_t> vmId) = 0;
7575
virtual std::vector<MemoryRegion> translateToMemoryRegions(const std::vector<uint8_t> &regionInfo) = 0;
7676
virtual CacheRegion closAlloc(Drm *drm) = 0;
7777
virtual uint16_t closAllocWays(Drm *drm, CacheRegion closIndex, uint16_t cacheLevel, uint16_t numWays) = 0;
@@ -132,7 +132,7 @@ class IoctlHelperUpstream : public IoctlHelper {
132132
IoctlHelper *clone() override;
133133

134134
bool isVmBindAvailable(Drm *drm) override;
135-
uint32_t createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, uint32_t vmId) override;
135+
uint32_t createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, std::optional<uint32_t> vmId) override;
136136
std::vector<MemoryRegion> translateToMemoryRegions(const std::vector<uint8_t> &regionInfo) override;
137137
CacheRegion closAlloc(Drm *drm) override;
138138
uint16_t closAllocWays(Drm *drm, CacheRegion closIndex, uint16_t cacheLevel, uint16_t numWays) override;
@@ -186,7 +186,7 @@ class IoctlHelperImpl : public IoctlHelperUpstream {
186186
}
187187
IoctlHelper *clone() override;
188188

189-
uint32_t createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, uint32_t vmId) override;
189+
uint32_t createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, std::optional<uint32_t> vmId) override;
190190
std::vector<MemoryRegion> translateToMemoryRegions(const std::vector<uint8_t> &regionInfo) override;
191191
unsigned int getIoctlRequestValue(DrmIoctl ioctlRequest) const override;
192192
};
@@ -196,7 +196,7 @@ class IoctlHelperPrelim20 : public IoctlHelper {
196196
IoctlHelper *clone() override;
197197

198198
bool isVmBindAvailable(Drm *drm) override;
199-
uint32_t createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, uint32_t vmId) override;
199+
uint32_t createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, std::optional<uint32_t> vmId) override;
200200
std::vector<MemoryRegion> translateToMemoryRegions(const std::vector<uint8_t> &regionInfo) override;
201201
CacheRegion closAlloc(Drm *drm) override;
202202
uint16_t closAllocWays(Drm *drm, CacheRegion closIndex, uint16_t cacheLevel, uint16_t numWays) override;

shared/source/os_interface/linux/ioctl_helper_prelim.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ bool IoctlHelperPrelim20::isVmBindAvailable(Drm *drm) {
4040
return vmBindSupported;
4141
}
4242

43-
uint32_t IoctlHelperPrelim20::createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, uint32_t vmId) {
43+
uint32_t IoctlHelperPrelim20::createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, std::optional<uint32_t> vmId) {
4444
uint32_t regionsSize = static_cast<uint32_t>(memClassInstances.size());
4545
std::vector<prelim_drm_i915_gem_memory_class_instance> regions(regionsSize);
4646
for (uint32_t i = 0; i < regionsSize; i++) {
@@ -57,9 +57,9 @@ uint32_t IoctlHelperPrelim20::createGemExt(Drm *drm, const MemRegionsVec &memCla
5757
setparamRegion.param = regionParam;
5858

5959
prelim_drm_i915_gem_create_ext_vm_private vmPrivate{};
60-
if (vmId != std::numeric_limits<uint32_t>::max()) {
60+
if (vmId != std::nullopt) {
6161
vmPrivate.base.name = PRELIM_I915_GEM_CREATE_EXT_VM_PRIVATE;
62-
vmPrivate.vm_id = vmId;
62+
vmPrivate.vm_id = vmId.value();
6363
setparamRegion.base.next_extension = reinterpret_cast<uintptr_t>(&vmPrivate);
6464
}
6565

shared/source/os_interface/linux/ioctl_helper_upstream.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ bool IoctlHelperUpstream::isVmBindAvailable(Drm *drm) {
2323
return false;
2424
}
2525

26-
uint32_t IoctlHelperUpstream::createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, uint32_t vmId) {
26+
uint32_t IoctlHelperUpstream::createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, std::optional<uint32_t> vmId) {
2727
uint32_t regionsSize = static_cast<uint32_t>(memClassInstances.size());
2828
std::vector<drm_i915_gem_memory_class_instance> regions(regionsSize);
2929
for (uint32_t i = 0; i < regionsSize; i++) {

shared/source/os_interface/linux/local/dg1/ioctl_helper_dg1.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ IoctlHelper *IoctlHelperImpl<gfxProduct>::clone() {
2323
}
2424

2525
template <>
26-
uint32_t IoctlHelperImpl<gfxProduct>::createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, uint32_t vmId) {
26+
uint32_t IoctlHelperImpl<gfxProduct>::createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, std::optional<uint32_t> vmId) {
2727
auto ret = IoctlHelperUpstream::createGemExt(drm, memClassInstances, allocSize, handle, vmId);
2828
if (ret == 0) {
2929
return ret;

shared/source/os_interface/linux/memory_info.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ void MemoryInfo::assignRegionsFromDistances(const std::vector<DistanceInfo> &dis
5353
}
5454
}
5555

56-
uint32_t MemoryInfo::createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, uint32_t vmId) {
56+
uint32_t MemoryInfo::createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, std::optional<uint32_t> vmId) {
5757
return drm->getIoctlHelper()->createGemExt(drm, memClassInstances, allocSize, handle, vmId);
5858
}
5959

@@ -109,7 +109,7 @@ uint32_t MemoryInfo::createGemExtWithSingleRegion(Drm *drm, uint32_t memoryBanks
109109
auto pHwInfo = drm->getRootDeviceEnvironment().getHardwareInfo();
110110
auto regionClassAndInstance = getMemoryRegionClassAndInstance(memoryBanks, *pHwInfo);
111111
MemRegionsVec region = {regionClassAndInstance};
112-
uint32_t vmId = std::numeric_limits<uint32_t>::max();
112+
std::optional<uint32_t> vmId;
113113
if (!drm->isPerContextVMRequired()) {
114114
if (memoryBanks != 0 && DebugManager.flags.EnablePrivateBO.get()) {
115115
auto tileIndex = getTileIndex(memoryBanks, *pHwInfo);

shared/source/os_interface/linux/memory_info.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ class MemoryInfo {
2626

2727
void assignRegionsFromDistances(const std::vector<DistanceInfo> &distances);
2828

29-
MOCKABLE_VIRTUAL uint32_t createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, uint32_t vmId);
29+
MOCKABLE_VIRTUAL uint32_t createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, std::optional<uint32_t> vmId);
3030

3131
MemoryClassInstance getMemoryRegionClassAndInstance(uint32_t memoryBank, const HardwareInfo &hwInfo);
3232

shared/test/common/libult/linux/drm_mock_prelim_context.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ struct CreateGemExt {
4545
std::vector<MemoryClassInstance> memoryRegions{};
4646

4747
struct VmPrivate {
48-
uint32_t vmId{std::numeric_limits<uint32_t>::max()};
48+
std::optional<uint32_t> vmId{};
4949
};
5050
VmPrivate vmPrivateExt{};
5151
};

shared/test/common/os_interface/linux/drm_memory_manager_tests.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,7 @@ struct MockedMemoryInfo : public NEO::MemoryInfo {
156156
size_t getMemoryRegionSize(uint32_t memoryBank) override {
157157
return 1024u;
158158
}
159-
uint32_t createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, uint32_t vmId) override {
159+
uint32_t createGemExt(Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, std::optional<uint32_t> vmId) override {
160160
if (allocSize == 0) {
161161
return EINVAL;
162162
}

shared/test/unit_test/os_interface/linux/drm_memory_info_prelim_tests.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -373,7 +373,7 @@ TEST(MemoryInfo, givenMemoryInfoWithRegionsWhenCreatingGemWithExtensionsThenRetu
373373
auto drm = std::make_unique<DrmQueryMock>(*executionEnvironment->rootDeviceEnvironments[0]);
374374
uint32_t handle = 0;
375375
MemRegionsVec memClassInstance = {regionInfo[0].region, regionInfo[1].region};
376-
auto ret = memoryInfo->createGemExt(drm.get(), memClassInstance, 1024, handle, std::numeric_limits<uint32_t>::max());
376+
auto ret = memoryInfo->createGemExt(drm.get(), memClassInstance, 1024, handle, {});
377377
EXPECT_EQ(1u, handle);
378378
EXPECT_EQ(0u, ret);
379379
EXPECT_EQ(1u, drm->ioctlCallsCount);
@@ -468,7 +468,7 @@ TEST(MemoryInfo, givenMemoryInfoWithRegionsAndNoPrivateBOSupportWhenCreatingGemE
468468

469469
const auto &createExt = drm->context.receivedCreateGemExt;
470470
ASSERT_TRUE(createExt);
471-
EXPECT_EQ(std::numeric_limits<uint32_t>::max(), createExt->vmPrivateExt.vmId);
471+
EXPECT_EQ(std::nullopt, createExt->vmPrivateExt.vmId);
472472
}
473473

474474
TEST(MemoryInfo, givenMemoryInfoWithRegionsAndPrivateBOSupportedAndIsPerContextVMRequiredIsTrueWhenCreatingGemExtWithSingleRegionThenVmIdIsNotSet) {
@@ -498,5 +498,5 @@ TEST(MemoryInfo, givenMemoryInfoWithRegionsAndPrivateBOSupportedAndIsPerContextV
498498

499499
const auto &createExt = drm->context.receivedCreateGemExt;
500500
ASSERT_TRUE(createExt);
501-
EXPECT_EQ(std::numeric_limits<uint32_t>::max(), createExt->vmPrivateExt.vmId);
501+
EXPECT_EQ(std::nullopt, createExt->vmPrivateExt.vmId);
502502
}

0 commit comments

Comments
 (0)