Skip to content

Commit 8156d5c

Browse files
Reorganize new ioctl and ioctl param logging code
Signed-off-by: Zbigniew Zdanowicz <zbigniew.zdanowicz@intel.com>
1 parent 7c8fcb3 commit 8156d5c

File tree

7 files changed

+256
-138
lines changed

7 files changed

+256
-138
lines changed

opencl/test/unit_test/os_interface/linux/drm_mock.cpp

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -267,3 +267,76 @@ void DrmMockEngine::handleQueryItem(drm_i915_query_item *queryItem) {
267267
break;
268268
}
269269
}
270+
271+
std::map<unsigned long, const char *> ioctlCodeStringMap = {
272+
{DRM_IOCTL_I915_INIT, "DRM_IOCTL_I915_INIT"},
273+
{DRM_IOCTL_I915_FLUSH, "DRM_IOCTL_I915_FLUSH"},
274+
{DRM_IOCTL_I915_FLIP, "DRM_IOCTL_I915_FLIP"},
275+
{DRM_IOCTL_GEM_CLOSE, "DRM_IOCTL_GEM_CLOSE"},
276+
{DRM_IOCTL_I915_BATCHBUFFER, "DRM_IOCTL_I915_BATCHBUFFER"},
277+
{DRM_IOCTL_I915_IRQ_EMIT, "DRM_IOCTL_I915_IRQ_EMIT"},
278+
{DRM_IOCTL_I915_IRQ_WAIT, "DRM_IOCTL_I915_IRQ_WAIT"},
279+
{DRM_IOCTL_I915_GETPARAM, "DRM_IOCTL_I915_GETPARAM"},
280+
{DRM_IOCTL_I915_SETPARAM, "DRM_IOCTL_I915_SETPARAM"},
281+
{DRM_IOCTL_I915_ALLOC, "DRM_IOCTL_I915_ALLOC"},
282+
{DRM_IOCTL_I915_FREE, "DRM_IOCTL_I915_FREE"},
283+
{DRM_IOCTL_I915_INIT_HEAP, "DRM_IOCTL_I915_INIT_HEAP"},
284+
{DRM_IOCTL_I915_CMDBUFFER, "DRM_IOCTL_I915_CMDBUFFER"},
285+
{DRM_IOCTL_I915_DESTROY_HEAP, "DRM_IOCTL_I915_DESTROY_HEAP"},
286+
{DRM_IOCTL_I915_SET_VBLANK_PIPE, "DRM_IOCTL_I915_SET_VBLANK_PIPE"},
287+
{DRM_IOCTL_I915_GET_VBLANK_PIPE, "DRM_IOCTL_I915_GET_VBLANK_PIPE"},
288+
{DRM_IOCTL_I915_VBLANK_SWAP, "DRM_IOCTL_I915_VBLANK_SWAP"},
289+
{DRM_IOCTL_I915_HWS_ADDR, "DRM_IOCTL_I915_HWS_ADDR"},
290+
{DRM_IOCTL_I915_GEM_INIT, "DRM_IOCTL_I915_GEM_INIT"},
291+
{DRM_IOCTL_I915_GEM_EXECBUFFER, "DRM_IOCTL_I915_GEM_EXECBUFFER"},
292+
{DRM_IOCTL_I915_GEM_EXECBUFFER2, "DRM_IOCTL_I915_GEM_EXECBUFFER2"},
293+
{DRM_IOCTL_I915_GEM_EXECBUFFER2_WR, "DRM_IOCTL_I915_GEM_EXECBUFFER2_WR"},
294+
{DRM_IOCTL_I915_GEM_PIN, "DRM_IOCTL_I915_GEM_PIN"},
295+
{DRM_IOCTL_I915_GEM_UNPIN, "DRM_IOCTL_I915_GEM_UNPIN"},
296+
{DRM_IOCTL_I915_GEM_BUSY, "DRM_IOCTL_I915_GEM_BUSY"},
297+
{DRM_IOCTL_I915_GEM_SET_CACHING, "DRM_IOCTL_I915_GEM_SET_CACHING"},
298+
{DRM_IOCTL_I915_GEM_GET_CACHING, "DRM_IOCTL_I915_GEM_GET_CACHING"},
299+
{DRM_IOCTL_I915_GEM_THROTTLE, "DRM_IOCTL_I915_GEM_THROTTLE"},
300+
{DRM_IOCTL_I915_GEM_ENTERVT, "DRM_IOCTL_I915_GEM_ENTERVT"},
301+
{DRM_IOCTL_I915_GEM_LEAVEVT, "DRM_IOCTL_I915_GEM_LEAVEVT"},
302+
{DRM_IOCTL_I915_GEM_CREATE, "DRM_IOCTL_I915_GEM_CREATE"},
303+
{DRM_IOCTL_I915_GEM_PREAD, "DRM_IOCTL_I915_GEM_PREAD"},
304+
{DRM_IOCTL_I915_GEM_PWRITE, "DRM_IOCTL_I915_GEM_PWRITE"},
305+
{DRM_IOCTL_I915_GEM_SET_DOMAIN, "DRM_IOCTL_I915_GEM_SET_DOMAIN"},
306+
{DRM_IOCTL_I915_GEM_SW_FINISH, "DRM_IOCTL_I915_GEM_SW_FINISH"},
307+
{DRM_IOCTL_I915_GEM_SET_TILING, "DRM_IOCTL_I915_GEM_SET_TILING"},
308+
{DRM_IOCTL_I915_GEM_GET_TILING, "DRM_IOCTL_I915_GEM_GET_TILING"},
309+
{DRM_IOCTL_I915_GEM_GET_APERTURE, "DRM_IOCTL_I915_GEM_GET_APERTURE"},
310+
{DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID, "DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID"},
311+
{DRM_IOCTL_I915_GEM_MADVISE, "DRM_IOCTL_I915_GEM_MADVISE"},
312+
{DRM_IOCTL_I915_OVERLAY_PUT_IMAGE, "DRM_IOCTL_I915_OVERLAY_PUT_IMAGE"},
313+
{DRM_IOCTL_I915_OVERLAY_ATTRS, "DRM_IOCTL_I915_OVERLAY_ATTRS"},
314+
{DRM_IOCTL_I915_SET_SPRITE_COLORKEY, "DRM_IOCTL_I915_SET_SPRITE_COLORKEY"},
315+
{DRM_IOCTL_I915_GET_SPRITE_COLORKEY, "DRM_IOCTL_I915_GET_SPRITE_COLORKEY"},
316+
{DRM_IOCTL_I915_GEM_WAIT, "DRM_IOCTL_I915_GEM_WAIT"},
317+
{DRM_IOCTL_I915_GEM_CONTEXT_CREATE, "DRM_IOCTL_I915_GEM_CONTEXT_CREATE"},
318+
{DRM_IOCTL_I915_GEM_CONTEXT_CREATE_EXT, "DRM_IOCTL_I915_GEM_CONTEXT_CREATE_EXT"},
319+
{DRM_IOCTL_I915_GEM_CONTEXT_DESTROY, "DRM_IOCTL_I915_GEM_CONTEXT_DESTROY"},
320+
{DRM_IOCTL_I915_REG_READ, "DRM_IOCTL_I915_REG_READ"},
321+
{DRM_IOCTL_I915_GET_RESET_STATS, "DRM_IOCTL_I915_GET_RESET_STATS"},
322+
{DRM_IOCTL_I915_GEM_USERPTR, "DRM_IOCTL_I915_GEM_USERPTR"},
323+
{DRM_IOCTL_I915_GEM_CONTEXT_GETPARAM, "DRM_IOCTL_I915_GEM_CONTEXT_GETPARAM"},
324+
{DRM_IOCTL_I915_GEM_CONTEXT_SETPARAM, "DRM_IOCTL_I915_GEM_CONTEXT_SETPARAM"},
325+
{DRM_IOCTL_I915_PERF_OPEN, "DRM_IOCTL_I915_PERF_OPEN"},
326+
{DRM_IOCTL_I915_PERF_ADD_CONFIG, "DRM_IOCTL_I915_PERF_ADD_CONFIG"},
327+
{DRM_IOCTL_I915_PERF_REMOVE_CONFIG, "DRM_IOCTL_I915_PERF_REMOVE_CONFIG"},
328+
{DRM_IOCTL_I915_QUERY, "DRM_IOCTL_I915_QUERY"},
329+
{DRM_IOCTL_I915_GEM_MMAP, "DRM_IOCTL_I915_GEM_MMAP"},
330+
{static_cast<unsigned long>(101010101), "101010101"}};
331+
332+
std::map<int, const char *> ioctlParamCodeStringMap = {
333+
{I915_PARAM_CHIPSET_ID, "I915_PARAM_CHIPSET_ID"},
334+
{I915_PARAM_REVISION, "I915_PARAM_REVISION"},
335+
{I915_PARAM_HAS_EXEC_SOFTPIN, "I915_PARAM_HAS_EXEC_SOFTPIN"},
336+
{I915_PARAM_HAS_POOLED_EU, "I915_PARAM_HAS_POOLED_EU"},
337+
{I915_PARAM_HAS_SCHEDULER, "I915_PARAM_HAS_SCHEDULER"},
338+
{I915_PARAM_EU_TOTAL, "I915_PARAM_EU_TOTAL"},
339+
{I915_PARAM_SUBSLICE_TOTAL, "I915_PARAM_SUBSLICE_TOTAL"},
340+
{I915_PARAM_MIN_EU_IN_POOL, "I915_PARAM_MIN_EU_IN_POOL"},
341+
{I915_PARAM_CS_TIMESTAMP_FREQUENCY, "I915_PARAM_CS_TIMESTAMP_FREQUENCY"},
342+
{static_cast<int>(101010101), "101010101"}};

opencl/test/unit_test/os_interface/linux/drm_mock.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
#include <cstdio>
2424
#include <fstream>
2525
#include <limits.h>
26+
#include <map>
2627

2728
using namespace NEO;
2829

@@ -247,3 +248,6 @@ class DrmMockResources : public DrmMock {
247248
size_t registeredDataSize;
248249
uint32_t currentCookie = 2;
249250
};
251+
252+
extern std::map<unsigned long, const char *> ioctlCodeStringMap;
253+
extern std::map<int, const char *> ioctlParamCodeStringMap;

shared/source/os_interface/linux/drm_neo.cpp

Lines changed: 128 additions & 128 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
namespace NEO {
3737

3838
namespace IoctlHelper {
39-
constexpr const char *getIoctlParamString(int param) {
39+
std::string getIoctlParamString(int param) {
4040
switch (param) {
4141
case I915_PARAM_CHIPSET_ID:
4242
return "I915_PARAM_CHIPSET_ID";
@@ -57,10 +57,131 @@ constexpr const char *getIoctlParamString(int param) {
5757
case I915_PARAM_CS_TIMESTAMP_FREQUENCY:
5858
return "I915_PARAM_CS_TIMESTAMP_FREQUENCY";
5959
default:
60-
break;
60+
return getIoctlParamStringRemaining(param);
6161
}
62+
}
6263

63-
return "UNKNOWN";
64+
std::string getIoctlString(unsigned long request) {
65+
switch (request) {
66+
case DRM_IOCTL_I915_GEM_EXECBUFFER2:
67+
return "DRM_IOCTL_I915_GEM_EXECBUFFER2";
68+
case DRM_IOCTL_I915_GEM_WAIT:
69+
return "DRM_IOCTL_I915_GEM_WAIT";
70+
case DRM_IOCTL_GEM_CLOSE:
71+
return "DRM_IOCTL_GEM_CLOSE";
72+
case DRM_IOCTL_I915_GEM_USERPTR:
73+
return "DRM_IOCTL_I915_GEM_USERPTR";
74+
case DRM_IOCTL_I915_INIT:
75+
return "DRM_IOCTL_I915_INIT";
76+
case DRM_IOCTL_I915_FLUSH:
77+
return "DRM_IOCTL_I915_FLUSH";
78+
case DRM_IOCTL_I915_FLIP:
79+
return "DRM_IOCTL_I915_FLIP";
80+
case DRM_IOCTL_I915_BATCHBUFFER:
81+
return "DRM_IOCTL_I915_BATCHBUFFER";
82+
case DRM_IOCTL_I915_IRQ_EMIT:
83+
return "DRM_IOCTL_I915_IRQ_EMIT";
84+
case DRM_IOCTL_I915_IRQ_WAIT:
85+
return "DRM_IOCTL_I915_IRQ_WAIT";
86+
case DRM_IOCTL_I915_GETPARAM:
87+
return "DRM_IOCTL_I915_GETPARAM";
88+
case DRM_IOCTL_I915_SETPARAM:
89+
return "DRM_IOCTL_I915_SETPARAM";
90+
case DRM_IOCTL_I915_ALLOC:
91+
return "DRM_IOCTL_I915_ALLOC";
92+
case DRM_IOCTL_I915_FREE:
93+
return "DRM_IOCTL_I915_FREE";
94+
case DRM_IOCTL_I915_INIT_HEAP:
95+
return "DRM_IOCTL_I915_INIT_HEAP";
96+
case DRM_IOCTL_I915_CMDBUFFER:
97+
return "DRM_IOCTL_I915_CMDBUFFER";
98+
case DRM_IOCTL_I915_DESTROY_HEAP:
99+
return "DRM_IOCTL_I915_DESTROY_HEAP";
100+
case DRM_IOCTL_I915_SET_VBLANK_PIPE:
101+
return "DRM_IOCTL_I915_SET_VBLANK_PIPE";
102+
case DRM_IOCTL_I915_GET_VBLANK_PIPE:
103+
return "DRM_IOCTL_I915_GET_VBLANK_PIPE";
104+
case DRM_IOCTL_I915_VBLANK_SWAP:
105+
return "DRM_IOCTL_I915_VBLANK_SWAP";
106+
case DRM_IOCTL_I915_HWS_ADDR:
107+
return "DRM_IOCTL_I915_HWS_ADDR";
108+
case DRM_IOCTL_I915_GEM_INIT:
109+
return "DRM_IOCTL_I915_GEM_INIT";
110+
case DRM_IOCTL_I915_GEM_EXECBUFFER:
111+
return "DRM_IOCTL_I915_GEM_EXECBUFFER";
112+
case DRM_IOCTL_I915_GEM_EXECBUFFER2_WR:
113+
return "DRM_IOCTL_I915_GEM_EXECBUFFER2_WR";
114+
case DRM_IOCTL_I915_GEM_PIN:
115+
return "DRM_IOCTL_I915_GEM_PIN";
116+
case DRM_IOCTL_I915_GEM_UNPIN:
117+
return "DRM_IOCTL_I915_GEM_UNPIN";
118+
case DRM_IOCTL_I915_GEM_BUSY:
119+
return "DRM_IOCTL_I915_GEM_BUSY";
120+
case DRM_IOCTL_I915_GEM_SET_CACHING:
121+
return "DRM_IOCTL_I915_GEM_SET_CACHING";
122+
case DRM_IOCTL_I915_GEM_GET_CACHING:
123+
return "DRM_IOCTL_I915_GEM_GET_CACHING";
124+
case DRM_IOCTL_I915_GEM_THROTTLE:
125+
return "DRM_IOCTL_I915_GEM_THROTTLE";
126+
case DRM_IOCTL_I915_GEM_ENTERVT:
127+
return "DRM_IOCTL_I915_GEM_ENTERVT";
128+
case DRM_IOCTL_I915_GEM_LEAVEVT:
129+
return "DRM_IOCTL_I915_GEM_LEAVEVT";
130+
case DRM_IOCTL_I915_GEM_CREATE:
131+
return "DRM_IOCTL_I915_GEM_CREATE";
132+
case DRM_IOCTL_I915_GEM_PREAD:
133+
return "DRM_IOCTL_I915_GEM_PREAD";
134+
case DRM_IOCTL_I915_GEM_PWRITE:
135+
return "DRM_IOCTL_I915_GEM_PWRITE";
136+
case DRM_IOCTL_I915_GEM_SET_DOMAIN:
137+
return "DRM_IOCTL_I915_GEM_SET_DOMAIN";
138+
case DRM_IOCTL_I915_GEM_SW_FINISH:
139+
return "DRM_IOCTL_I915_GEM_SW_FINISH";
140+
case DRM_IOCTL_I915_GEM_SET_TILING:
141+
return "DRM_IOCTL_I915_GEM_SET_TILING";
142+
case DRM_IOCTL_I915_GEM_GET_TILING:
143+
return "DRM_IOCTL_I915_GEM_GET_TILING";
144+
case DRM_IOCTL_I915_GEM_GET_APERTURE:
145+
return "DRM_IOCTL_I915_GEM_GET_APERTURE";
146+
case DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID:
147+
return "DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID";
148+
case DRM_IOCTL_I915_GEM_MADVISE:
149+
return "DRM_IOCTL_I915_GEM_MADVISE";
150+
case DRM_IOCTL_I915_OVERLAY_PUT_IMAGE:
151+
return "DRM_IOCTL_I915_OVERLAY_PUT_IMAGE";
152+
case DRM_IOCTL_I915_OVERLAY_ATTRS:
153+
return "DRM_IOCTL_I915_OVERLAY_ATTRS";
154+
case DRM_IOCTL_I915_SET_SPRITE_COLORKEY:
155+
return "DRM_IOCTL_I915_SET_SPRITE_COLORKEY";
156+
case DRM_IOCTL_I915_GET_SPRITE_COLORKEY:
157+
return "DRM_IOCTL_I915_GET_SPRITE_COLORKEY";
158+
case DRM_IOCTL_I915_GEM_CONTEXT_CREATE:
159+
return "DRM_IOCTL_I915_GEM_CONTEXT_CREATE";
160+
case DRM_IOCTL_I915_GEM_CONTEXT_CREATE_EXT:
161+
return "DRM_IOCTL_I915_GEM_CONTEXT_CREATE_EXT";
162+
case DRM_IOCTL_I915_GEM_CONTEXT_DESTROY:
163+
return "DRM_IOCTL_I915_GEM_CONTEXT_DESTROY";
164+
case DRM_IOCTL_I915_REG_READ:
165+
return "DRM_IOCTL_I915_REG_READ";
166+
case DRM_IOCTL_I915_GET_RESET_STATS:
167+
return "DRM_IOCTL_I915_GET_RESET_STATS";
168+
case DRM_IOCTL_I915_GEM_CONTEXT_GETPARAM:
169+
return "DRM_IOCTL_I915_GEM_CONTEXT_GETPARAM";
170+
case DRM_IOCTL_I915_GEM_CONTEXT_SETPARAM:
171+
return "DRM_IOCTL_I915_GEM_CONTEXT_SETPARAM";
172+
case DRM_IOCTL_I915_PERF_OPEN:
173+
return "DRM_IOCTL_I915_PERF_OPEN";
174+
case DRM_IOCTL_I915_PERF_ADD_CONFIG:
175+
return "DRM_IOCTL_I915_PERF_ADD_CONFIG";
176+
case DRM_IOCTL_I915_PERF_REMOVE_CONFIG:
177+
return "DRM_IOCTL_I915_PERF_REMOVE_CONFIG";
178+
case DRM_IOCTL_I915_QUERY:
179+
return "DRM_IOCTL_I915_QUERY";
180+
case DRM_IOCTL_I915_GEM_MMAP:
181+
return "DRM_IOCTL_I915_GEM_MMAP";
182+
default:
183+
return getIoctlStringRemaining(request);
184+
}
64185
}
65186

66187
} // namespace IoctlHelper
@@ -88,15 +209,15 @@ int Drm::ioctl(unsigned long request, void *arg) {
88209
auto printIoctl = DebugManager.flags.PrintIoctlEntries.get();
89210

90211
if (printIoctl) {
91-
printf("IOCTL %s called\n", this->ioctlToString(request).c_str());
212+
printf("IOCTL %s called\n", IoctlHelper::getIoctlString(request).c_str());
92213
}
93214

94215
ret = SysCalls::ioctl(getFileDescriptor(), request, arg);
95216

96217
returnedErrno = errno;
97218

98219
if (printIoctl) {
99-
printf("IOCTL %s returns %d, errno %d(%s)\n", this->ioctlToString(request).c_str(), ret, returnedErrno, strerror(returnedErrno));
220+
printf("IOCTL %s returns %d, errno %d(%s)\n", IoctlHelper::getIoctlString(request).c_str(), ret, returnedErrno, strerror(returnedErrno));
100221
}
101222

102223
if (measureTime) {
@@ -127,7 +248,7 @@ int Drm::getParamIoctl(int param, int *dstValue) {
127248
int retVal = ioctl(DRM_IOCTL_I915_GETPARAM, &getParam);
128249
if (DebugManager.flags.PrintIoctlEntries.get()) {
129250
printf("DRM_IOCTL_I915_GETPARAM: param: %s, output value: %d, retCode:% d\n",
130-
IoctlHelper::getIoctlParamString(param),
251+
IoctlHelper::getIoctlParamString(param).c_str(),
131252
*getParam.value,
132253
retVal);
133254
}
@@ -493,132 +614,11 @@ void Drm::printIoctlStatistics() {
493614
printf("\n--- Ioctls statistics ---\n");
494615
printf("%40s %15s %10s %20s", "Request", "Total time(ns)", "Count", "Avg time per ioctl\n");
495616
for (const auto &ioctlData : this->ioctlStatistics) {
496-
printf("%40s %15llu %10lu %20f\n", this->ioctlToString(ioctlData.first).c_str(), ioctlData.second.first, static_cast<unsigned long>(ioctlData.second.second), ioctlData.second.first / static_cast<double>(ioctlData.second.second));
617+
printf("%40s %15llu %10lu %20f\n", IoctlHelper::getIoctlString(ioctlData.first).c_str(), ioctlData.second.first, static_cast<unsigned long>(ioctlData.second.second), ioctlData.second.first / static_cast<double>(ioctlData.second.second));
497618
}
498619
printf("\n");
499620
}
500621

501-
std::string Drm::ioctlToString(unsigned long request) {
502-
switch (request) {
503-
case DRM_IOCTL_I915_GEM_EXECBUFFER2:
504-
return "DRM_IOCTL_I915_GEM_EXECBUFFER2";
505-
case DRM_IOCTL_I915_GEM_WAIT:
506-
return "DRM_IOCTL_I915_GEM_WAIT";
507-
case DRM_IOCTL_GEM_CLOSE:
508-
return "DRM_IOCTL_GEM_CLOSE";
509-
case DRM_IOCTL_I915_GEM_USERPTR:
510-
return "DRM_IOCTL_I915_GEM_USERPTR";
511-
case DRM_IOCTL_I915_INIT:
512-
return "DRM_IOCTL_I915_INIT";
513-
case DRM_IOCTL_I915_FLUSH:
514-
return "DRM_IOCTL_I915_FLUSH";
515-
case DRM_IOCTL_I915_FLIP:
516-
return "DRM_IOCTL_I915_FLIP";
517-
case DRM_IOCTL_I915_BATCHBUFFER:
518-
return "DRM_IOCTL_I915_BATCHBUFFER";
519-
case DRM_IOCTL_I915_IRQ_EMIT:
520-
return "DRM_IOCTL_I915_IRQ_EMIT";
521-
case DRM_IOCTL_I915_IRQ_WAIT:
522-
return "DRM_IOCTL_I915_IRQ_WAIT";
523-
case DRM_IOCTL_I915_GETPARAM:
524-
return "DRM_IOCTL_I915_GETPARAM";
525-
case DRM_IOCTL_I915_SETPARAM:
526-
return "DRM_IOCTL_I915_SETPARAM";
527-
case DRM_IOCTL_I915_ALLOC:
528-
return "DRM_IOCTL_I915_ALLOC";
529-
case DRM_IOCTL_I915_FREE:
530-
return "DRM_IOCTL_I915_FREE";
531-
case DRM_IOCTL_I915_INIT_HEAP:
532-
return "DRM_IOCTL_I915_INIT_HEAP";
533-
case DRM_IOCTL_I915_CMDBUFFER:
534-
return "DRM_IOCTL_I915_CMDBUFFER";
535-
case DRM_IOCTL_I915_DESTROY_HEAP:
536-
return "DRM_IOCTL_I915_DESTROY_HEAP";
537-
case DRM_IOCTL_I915_SET_VBLANK_PIPE:
538-
return "DRM_IOCTL_I915_SET_VBLANK_PIPE";
539-
case DRM_IOCTL_I915_GET_VBLANK_PIPE:
540-
return "DRM_IOCTL_I915_GET_VBLANK_PIPE";
541-
case DRM_IOCTL_I915_VBLANK_SWAP:
542-
return "DRM_IOCTL_I915_VBLANK_SWAP";
543-
case DRM_IOCTL_I915_HWS_ADDR:
544-
return "DRM_IOCTL_I915_HWS_ADDR";
545-
case DRM_IOCTL_I915_GEM_INIT:
546-
return "DRM_IOCTL_I915_GEM_INIT";
547-
case DRM_IOCTL_I915_GEM_EXECBUFFER:
548-
return "DRM_IOCTL_I915_GEM_EXECBUFFER";
549-
case DRM_IOCTL_I915_GEM_EXECBUFFER2_WR:
550-
return "DRM_IOCTL_I915_GEM_EXECBUFFER2_WR";
551-
case DRM_IOCTL_I915_GEM_PIN:
552-
return "DRM_IOCTL_I915_GEM_PIN";
553-
case DRM_IOCTL_I915_GEM_UNPIN:
554-
return "DRM_IOCTL_I915_GEM_UNPIN";
555-
case DRM_IOCTL_I915_GEM_BUSY:
556-
return "DRM_IOCTL_I915_GEM_BUSY";
557-
case DRM_IOCTL_I915_GEM_SET_CACHING:
558-
return "DRM_IOCTL_I915_GEM_SET_CACHING";
559-
case DRM_IOCTL_I915_GEM_GET_CACHING:
560-
return "DRM_IOCTL_I915_GEM_GET_CACHING";
561-
case DRM_IOCTL_I915_GEM_THROTTLE:
562-
return "DRM_IOCTL_I915_GEM_THROTTLE";
563-
case DRM_IOCTL_I915_GEM_ENTERVT:
564-
return "DRM_IOCTL_I915_GEM_ENTERVT";
565-
case DRM_IOCTL_I915_GEM_LEAVEVT:
566-
return "DRM_IOCTL_I915_GEM_LEAVEVT";
567-
case DRM_IOCTL_I915_GEM_CREATE:
568-
return "DRM_IOCTL_I915_GEM_CREATE";
569-
case DRM_IOCTL_I915_GEM_PREAD:
570-
return "DRM_IOCTL_I915_GEM_PREAD";
571-
case DRM_IOCTL_I915_GEM_PWRITE:
572-
return "DRM_IOCTL_I915_GEM_PWRITE";
573-
case DRM_IOCTL_I915_GEM_SET_DOMAIN:
574-
return "DRM_IOCTL_I915_GEM_SET_DOMAIN";
575-
case DRM_IOCTL_I915_GEM_SW_FINISH:
576-
return "DRM_IOCTL_I915_GEM_SW_FINISH";
577-
case DRM_IOCTL_I915_GEM_SET_TILING:
578-
return "DRM_IOCTL_I915_GEM_SET_TILING";
579-
case DRM_IOCTL_I915_GEM_GET_TILING:
580-
return "DRM_IOCTL_I915_GEM_GET_TILING";
581-
case DRM_IOCTL_I915_GEM_GET_APERTURE:
582-
return "DRM_IOCTL_I915_GEM_GET_APERTURE";
583-
case DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID:
584-
return "DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID";
585-
case DRM_IOCTL_I915_GEM_MADVISE:
586-
return "DRM_IOCTL_I915_GEM_MADVISE";
587-
case DRM_IOCTL_I915_OVERLAY_PUT_IMAGE:
588-
return "DRM_IOCTL_I915_OVERLAY_PUT_IMAGE";
589-
case DRM_IOCTL_I915_OVERLAY_ATTRS:
590-
return "DRM_IOCTL_I915_OVERLAY_ATTRS";
591-
case DRM_IOCTL_I915_SET_SPRITE_COLORKEY:
592-
return "DRM_IOCTL_I915_SET_SPRITE_COLORKEY";
593-
case DRM_IOCTL_I915_GET_SPRITE_COLORKEY:
594-
return "DRM_IOCTL_I915_GET_SPRITE_COLORKEY";
595-
case DRM_IOCTL_I915_GEM_CONTEXT_CREATE:
596-
return "DRM_IOCTL_I915_GEM_CONTEXT_CREATE";
597-
case DRM_IOCTL_I915_GEM_CONTEXT_CREATE_EXT:
598-
return "DRM_IOCTL_I915_GEM_CONTEXT_CREATE_EXT";
599-
case DRM_IOCTL_I915_GEM_CONTEXT_DESTROY:
600-
return "DRM_IOCTL_I915_GEM_CONTEXT_DESTROY";
601-
case DRM_IOCTL_I915_REG_READ:
602-
return "DRM_IOCTL_I915_REG_READ";
603-
case DRM_IOCTL_I915_GET_RESET_STATS:
604-
return "DRM_IOCTL_I915_GET_RESET_STATS";
605-
case DRM_IOCTL_I915_GEM_CONTEXT_GETPARAM:
606-
return "DRM_IOCTL_I915_GEM_CONTEXT_GETPARAM";
607-
case DRM_IOCTL_I915_GEM_CONTEXT_SETPARAM:
608-
return "DRM_IOCTL_I915_GEM_CONTEXT_SETPARAM";
609-
case DRM_IOCTL_I915_PERF_OPEN:
610-
return "DRM_IOCTL_I915_PERF_OPEN";
611-
case DRM_IOCTL_I915_PERF_ADD_CONFIG:
612-
return "DRM_IOCTL_I915_PERF_ADD_CONFIG";
613-
case DRM_IOCTL_I915_PERF_REMOVE_CONFIG:
614-
return "DRM_IOCTL_I915_PERF_REMOVE_CONFIG";
615-
case DRM_IOCTL_I915_QUERY:
616-
return "DRM_IOCTL_I915_QUERY";
617-
default:
618-
return ioctlToStringImpl(request);
619-
}
620-
}
621-
622622
bool Drm::createVirtualMemoryAddressSpace(uint32_t vmCount) {
623623
for (auto i = 0u; i < vmCount; i++) {
624624
uint32_t id = i;

0 commit comments

Comments
 (0)