@@ -38,9 +38,9 @@ uint32_t EuDebugInterfaceUpstream::getParamValue(EuDebugParam param) const {
3838 case EuDebugParam::eventTypeExecQueuePlacements:
3939 return 0 ;
4040 case EuDebugParam::eventTypeMetadata:
41- return DRM_XE_EUDEBUG_EVENT_METADATA ;
41+ return 0 ;
4242 case EuDebugParam::eventTypeOpen:
43- return DRM_XE_EUDEBUG_EVENT_OPEN ;
43+ return 0 ;
4444 case EuDebugParam::eventTypePagefault:
4545 return DRM_XE_EUDEBUG_EVENT_PAGEFAULT;
4646 case EuDebugParam::eventTypeRead:
@@ -50,9 +50,9 @@ uint32_t EuDebugInterfaceUpstream::getParamValue(EuDebugParam param) const {
5050 case EuDebugParam::eventTypeVmBind:
5151 return DRM_XE_EUDEBUG_EVENT_VM_BIND;
5252 case EuDebugParam::eventTypeVmBindOp:
53- return DRM_XE_EUDEBUG_EVENT_VM_BIND_OP ;
53+ return 0 ;
5454 case EuDebugParam::eventTypeVmBindOpMetadata:
55- return DRM_XE_EUDEBUG_EVENT_VM_BIND_OP_METADATA ;
55+ return 0 ;
5656 case EuDebugParam::eventTypeVmBindUfence:
5757 return DRM_XE_EUDEBUG_EVENT_VM_BIND_UFENCE;
5858 case EuDebugParam::eventVmBindFlagUfence:
@@ -70,25 +70,25 @@ uint32_t EuDebugInterfaceUpstream::getParamValue(EuDebugParam param) const {
7070 case EuDebugParam::ioctlReadEvent:
7171 return DRM_XE_EUDEBUG_IOCTL_READ_EVENT;
7272 case EuDebugParam::ioctlReadMetadata:
73- return DRM_XE_EUDEBUG_IOCTL_READ_METADATA ;
73+ return 0 ;
7474 case EuDebugParam::ioctlVmOpen:
7575 return DRM_XE_EUDEBUG_IOCTL_VM_OPEN;
7676 case EuDebugParam::metadataCreate:
77- return DRM_IOCTL_XE_DEBUG_METADATA_CREATE ;
77+ return 0 ;
7878 case EuDebugParam::metadataDestroy:
79- return DRM_IOCTL_XE_DEBUG_METADATA_DESTROY ;
79+ return 0 ;
8080 case EuDebugParam::metadataElfBinary:
81- return DRM_XE_DEBUG_METADATA_ELF_BINARY ;
81+ return 0 ;
8282 case EuDebugParam::metadataModuleArea:
83- return WORK_IN_PROGRESS_DRM_XE_DEBUG_METADATA_MODULE_AREA ;
83+ return 0 ;
8484 case EuDebugParam::metadataProgramModule:
85- return DRM_XE_DEBUG_METADATA_PROGRAM_MODULE ;
85+ return 0 ;
8686 case EuDebugParam::metadataSbaArea:
87- return WORK_IN_PROGRESS_DRM_XE_DEBUG_METADATA_SBA_AREA ;
87+ return 0 ;
8888 case EuDebugParam::metadataSipArea:
89- return WORK_IN_PROGRESS_DRM_XE_DEBUG_METADATA_SIP_AREA ;
89+ return 0 ;
9090 case EuDebugParam::vmBindOpExtensionsAttachDebug:
91- return XE_VM_BIND_OP_EXTENSIONS_ATTACH_DEBUG ;
91+ return 0 ;
9292 }
9393 return 0 ;
9494}
@@ -97,6 +97,10 @@ EuDebugInterfaceType EuDebugInterfaceUpstream::getInterfaceType() const {
9797 return EuDebugInterfaceType::upstream;
9898}
9999
100+ uint64_t EuDebugInterfaceUpstream::getDefaultClientHandle () const {
101+ return defaultClientHandle;
102+ }
103+
100104std::unique_ptr<EuDebugEventEuAttention, void (*)(EuDebugEventEuAttention *)> EuDebugInterfaceUpstream::toEuDebugEventEuAttention (const void *drmType) {
101105 const drm_xe_eudebug_event_eu_attention *event = static_cast <const drm_xe_eudebug_event_eu_attention *>(drmType);
102106 EuDebugEventEuAttention *pEuAttentionEvent = static_cast <EuDebugEventEuAttention *>(malloc (sizeof (EuDebugEventEuAttention) + event->bitmask_size * sizeof (uint8_t )));
@@ -112,7 +116,7 @@ std::unique_ptr<EuDebugEventEuAttention, void (*)(EuDebugEventEuAttention *)> Eu
112116 pEuAttentionEvent->flags = event->flags ;
113117 pEuAttentionEvent->lrcHandle = event->lrc_handle ;
114118 pEuAttentionEvent->execQueueHandle = event->exec_queue_handle ;
115- pEuAttentionEvent->clientHandle = event-> client_handle ;
119+ pEuAttentionEvent->clientHandle = defaultClientHandle ;
116120
117121 auto deleter = [](EuDebugEventEuAttention *ptr) {
118122 free (ptr);
@@ -122,18 +126,8 @@ std::unique_ptr<EuDebugEventEuAttention, void (*)(EuDebugEventEuAttention *)> Eu
122126}
123127
124128EuDebugEventClient EuDebugInterfaceUpstream::toEuDebugEventClient (const void *drmType) {
125- const drm_xe_eudebug_event_client *event = static_cast <const drm_xe_eudebug_event_client *>(drmType);
126- EuDebugEventClient euClientEvent = {};
127-
128- euClientEvent.base .len = event->base .len ;
129- euClientEvent.base .type = event->base .type ;
130- euClientEvent.base .flags = event->base .flags ;
131- euClientEvent.base .seqno = event->base .seqno ;
132- euClientEvent.base .reserved = event->base .reserved ;
133-
134- euClientEvent.clientHandle = event->client_handle ;
135-
136- return euClientEvent;
129+ UNRECOVERABLE_IF (true );
130+ return {};
137131}
138132
139133EuDebugEventVm EuDebugInterfaceUpstream::toEuDebugEventVm (const void *drmType) {
@@ -145,9 +139,8 @@ EuDebugEventVm EuDebugInterfaceUpstream::toEuDebugEventVm(const void *drmType) {
145139 euVmEvent.base .flags = event->base .flags ;
146140 euVmEvent.base .seqno = event->base .seqno ;
147141 euVmEvent.base .reserved = event->base .reserved ;
148-
149- euVmEvent.clientHandle = event->client_handle ;
150142 euVmEvent.vmHandle = event->vm_handle ;
143+ euVmEvent.clientHandle = defaultClientHandle;
151144
152145 return euVmEvent;
153146}
@@ -166,7 +159,7 @@ std::unique_ptr<EuDebugEventExecQueue, void (*)(EuDebugEventExecQueue *)> EuDebu
166159 pExecQueueEvent->engineClass = event->engine_class ;
167160 pExecQueueEvent->width = event->width ;
168161 pExecQueueEvent->vmHandle = event->vm_handle ;
169- pExecQueueEvent->clientHandle = event-> client_handle ;
162+ pExecQueueEvent->clientHandle = defaultClientHandle ;
170163 memcpy (pExecQueueEvent->lrcHandle , event->lrc_handle , event->width * sizeof (uint64_t ));
171164
172165 auto deleter = [](EuDebugEventExecQueue *ptr) {
@@ -183,21 +176,9 @@ std::unique_ptr<EuDebugEventExecQueuePlacements, void (*)(EuDebugEventExecQueueP
183176}
184177
185178EuDebugEventMetadata EuDebugInterfaceUpstream::toEuDebugEventMetadata (const void *drmType) {
186- const drm_xe_eudebug_event_metadata *event = static_cast <const drm_xe_eudebug_event_metadata *>(drmType);
187- EuDebugEventMetadata metadataEvent = {};
188179
189- metadataEvent.base .len = event->base .len ;
190- metadataEvent.base .type = event->base .type ;
191- metadataEvent.base .flags = event->base .flags ;
192- metadataEvent.base .seqno = event->base .seqno ;
193- metadataEvent.base .reserved = event->base .reserved ;
194-
195- metadataEvent.clientHandle = event->client_handle ;
196- metadataEvent.len = event->len ;
197- metadataEvent.metadataHandle = event->metadata_handle ;
198- metadataEvent.type = event->type ;
199-
200- return metadataEvent;
180+ UNRECOVERABLE_IF (true );
181+ return {};
201182}
202183
203184EuDebugEventVmBind EuDebugInterfaceUpstream::toEuDebugEventVmBind (const void *drmType) {
@@ -209,48 +190,24 @@ EuDebugEventVmBind EuDebugInterfaceUpstream::toEuDebugEventVmBind(const void *dr
209190 vmBindEvent.base .flags = event->base .flags ;
210191 vmBindEvent.base .seqno = event->base .seqno ;
211192 vmBindEvent.base .reserved = event->base .reserved ;
212-
213- vmBindEvent.clientHandle = event->client_handle ;
214193 vmBindEvent.flags = event->flags ;
215194 vmBindEvent.numBinds = event->num_binds ;
216195 vmBindEvent.vmHandle = event->vm_handle ;
196+ vmBindEvent.clientHandle = defaultClientHandle;
217197
218198 return vmBindEvent;
219199}
220200
221201NEO::EuDebugEventVmBindOp EuDebugInterfaceUpstream::toEuDebugEventVmBindOp (const void *drmType) {
222- const drm_xe_eudebug_event_vm_bind_op *event = static_cast <const drm_xe_eudebug_event_vm_bind_op *>(drmType);
223- EuDebugEventVmBindOp vmBindOpEvent = {};
224202
225- vmBindOpEvent.base .len = event->base .len ;
226- vmBindOpEvent.base .type = event->base .type ;
227- vmBindOpEvent.base .flags = event->base .flags ;
228- vmBindOpEvent.base .seqno = event->base .seqno ;
229- vmBindOpEvent.base .reserved = event->base .reserved ;
230-
231- vmBindOpEvent.vmBindRefSeqno = event->vm_bind_ref_seqno ;
232- vmBindOpEvent.numExtensions = event->num_extensions ;
233- vmBindOpEvent.addr = event->addr ;
234- vmBindOpEvent.range = event->range ;
235-
236- return vmBindOpEvent;
203+ UNRECOVERABLE_IF (true );
204+ return {};
237205}
238206
239207EuDebugEventVmBindOpMetadata EuDebugInterfaceUpstream::toEuDebugEventVmBindOpMetadata (const void *drmType) {
240- const drm_xe_eudebug_event_vm_bind_op_metadata *event = static_cast <const drm_xe_eudebug_event_vm_bind_op_metadata *>(drmType);
241- EuDebugEventVmBindOpMetadata vmBindOpMetadataEvent = {};
242-
243- vmBindOpMetadataEvent.base .len = event->base .len ;
244- vmBindOpMetadataEvent.base .type = event->base .type ;
245- vmBindOpMetadataEvent.base .flags = event->base .flags ;
246- vmBindOpMetadataEvent.base .seqno = event->base .seqno ;
247- vmBindOpMetadataEvent.base .reserved = event->base .reserved ;
248208
249- vmBindOpMetadataEvent.vmBindOpRefSeqno = event->vm_bind_op_ref_seqno ;
250- vmBindOpMetadataEvent.metadataHandle = event->metadata_handle ;
251- vmBindOpMetadataEvent.metadataCookie = event->metadata_cookie ;
252-
253- return vmBindOpMetadataEvent;
209+ UNRECOVERABLE_IF (true );
210+ return {};
254211}
255212
256213EuDebugEventVmBindUfence EuDebugInterfaceUpstream::toEuDebugEventVmBindUfence (const void *drmType) {
@@ -280,11 +237,11 @@ std::unique_ptr<EuDebugEventPageFault, void (*)(EuDebugEventPageFault *)> EuDebu
280237
281238 memcpy (pPageFaultEvent->bitmask , event->bitmask , event->bitmask_size * sizeof (uint8_t ));
282239 pPageFaultEvent->bitmaskSize = event->bitmask_size ;
283- pPageFaultEvent->clientHandle = event->client_handle ;
284240 pPageFaultEvent->flags = event->flags ;
285241 pPageFaultEvent->execQueueHandle = event->exec_queue_handle ;
286242 pPageFaultEvent->lrcHandle = event->lrc_handle ;
287243 pPageFaultEvent->pagefaultAddress = event->pagefault_address ;
244+ pPageFaultEvent->clientHandle = defaultClientHandle;
288245
289246 auto deleter = [](EuDebugEventPageFault *ptr) {
290247 free (ptr);
@@ -299,12 +256,12 @@ EuDebugEuControl EuDebugInterfaceUpstream::toEuDebugEuControl(const void *drmTyp
299256
300257 control.bitmaskPtr = euControl->bitmask_ptr ;
301258 control.bitmaskSize = euControl->bitmask_size ;
302- control.clientHandle = euControl->client_handle ;
303259 control.cmd = euControl->cmd ;
304260 control.flags = euControl->flags ;
305261 control.execQueueHandle = euControl->exec_queue_handle ;
306262 control.lrcHandle = euControl->lrc_handle ;
307263 control.seqno = euControl->seqno ;
264+ control.clientHandle = defaultClientHandle;
308265
309266 return control;
310267}
@@ -315,7 +272,6 @@ EuDebugConnect EuDebugInterfaceUpstream::toEuDebugConnect(const void *drmType) {
315272
316273 connectEvent.extensions = event->extensions ;
317274 connectEvent.flags = event->flags ;
318- connectEvent.pid = event->pid ;
319275 connectEvent.version = event->version ;
320276
321277 return connectEvent;
@@ -325,7 +281,6 @@ std::unique_ptr<void, void (*)(void *)> EuDebugInterfaceUpstream::toDrmEuDebugCo
325281 struct drm_xe_eudebug_connect *pDrmConnect = new drm_xe_eudebug_connect ();
326282
327283 pDrmConnect->extensions = connect.extensions ;
328- pDrmConnect->pid = connect.pid ;
329284 pDrmConnect->flags = connect.flags ;
330285 pDrmConnect->version = connect.version ;
331286
@@ -340,7 +295,6 @@ std::unique_ptr<void, void (*)(void *)> EuDebugInterfaceUpstream::toDrmEuDebugEu
340295
341296 pDrmEuControl->bitmask_ptr = euControl.bitmaskPtr ;
342297 pDrmEuControl->bitmask_size = euControl.bitmaskSize ;
343- pDrmEuControl->client_handle = euControl.clientHandle ;
344298 pDrmEuControl->cmd = euControl.cmd ;
345299 pDrmEuControl->flags = euControl.flags ;
346300 pDrmEuControl->exec_queue_handle = euControl.execQueueHandle ;
@@ -356,7 +310,6 @@ std::unique_ptr<void, void (*)(void *)> EuDebugInterfaceUpstream::toDrmEuDebugEu
356310std::unique_ptr<void , void (*)(void *)> EuDebugInterfaceUpstream::toDrmEuDebugVmOpen (const EuDebugVmOpen &vmOpen) {
357311 struct drm_xe_eudebug_vm_open *pDrmVmOpen = new drm_xe_eudebug_vm_open ();
358312
359- pDrmVmOpen->client_handle = vmOpen.clientHandle ;
360313 pDrmVmOpen->extensions = vmOpen.extensions ;
361314 pDrmVmOpen->flags = vmOpen.flags ;
362315 pDrmVmOpen->timeout_ns = vmOpen.timeoutNs ;
@@ -387,35 +340,9 @@ static_assert(offsetof(EuDebugEvent, flags) == offsetof(drm_xe_eudebug_event, fl
387340static_assert (offsetof(EuDebugEvent, seqno) == offsetof(drm_xe_eudebug_event, seqno));
388341static_assert (offsetof(EuDebugEvent, reserved) == offsetof(drm_xe_eudebug_event, reserved));
389342
390- static_assert (sizeof (EuDebugReadMetadata) == sizeof (drm_xe_eudebug_read_metadata));
391- static_assert (offsetof(EuDebugReadMetadata, clientHandle) == offsetof(drm_xe_eudebug_read_metadata, client_handle));
392- static_assert (offsetof(EuDebugReadMetadata, metadataHandle) == offsetof(drm_xe_eudebug_read_metadata, metadata_handle));
393- static_assert (offsetof(EuDebugReadMetadata, flags) == offsetof(drm_xe_eudebug_read_metadata, flags));
394- static_assert (offsetof(EuDebugReadMetadata, reserved) == offsetof(drm_xe_eudebug_read_metadata, reserved));
395- static_assert (offsetof(EuDebugReadMetadata, ptr) == offsetof(drm_xe_eudebug_read_metadata, ptr));
396- static_assert (offsetof(EuDebugReadMetadata, size) == offsetof(drm_xe_eudebug_read_metadata, size));
397-
398- static_assert (sizeof (DebugMetadataCreate) == sizeof (drm_xe_debug_metadata_create));
399- static_assert (offsetof(DebugMetadataCreate, extensions) == offsetof(drm_xe_debug_metadata_create, extensions));
400- static_assert (offsetof(DebugMetadataCreate, type) == offsetof(drm_xe_debug_metadata_create, type));
401- static_assert (offsetof(DebugMetadataCreate, userAddr) == offsetof(drm_xe_debug_metadata_create, user_addr));
402- static_assert (offsetof(DebugMetadataCreate, len) == offsetof(drm_xe_debug_metadata_create, len));
403- static_assert (offsetof(DebugMetadataCreate, metadataId) == offsetof(drm_xe_debug_metadata_create, metadata_id));
404-
405- static_assert (sizeof (DebugMetadataDestroy) == sizeof (drm_xe_debug_metadata_destroy));
406- static_assert (offsetof(DebugMetadataDestroy, extensions) == offsetof(drm_xe_debug_metadata_destroy, extensions));
407- static_assert (offsetof(DebugMetadataDestroy, metadataId) == offsetof(drm_xe_debug_metadata_destroy, metadata_id));
408-
409343static_assert (sizeof (XeUserExtension) == sizeof (drm_xe_user_extension));
410344static_assert (offsetof(XeUserExtension, nextExtension) == offsetof(drm_xe_user_extension, next_extension));
411345static_assert (offsetof(XeUserExtension, name) == offsetof(drm_xe_user_extension, name));
412346static_assert (offsetof(XeUserExtension, pad) == offsetof(drm_xe_user_extension, pad));
413347
414- static_assert (sizeof (VmBindOpExtAttachDebug) == sizeof (drm_xe_vm_bind_op_ext_attach_debug));
415- static_assert (offsetof(VmBindOpExtAttachDebug, base) == offsetof(drm_xe_vm_bind_op_ext_attach_debug, base));
416- static_assert (offsetof(VmBindOpExtAttachDebug, metadataId) == offsetof(drm_xe_vm_bind_op_ext_attach_debug, metadata_id));
417- static_assert (offsetof(VmBindOpExtAttachDebug, flags) == offsetof(drm_xe_vm_bind_op_ext_attach_debug, flags));
418- static_assert (offsetof(VmBindOpExtAttachDebug, cookie) == offsetof(drm_xe_vm_bind_op_ext_attach_debug, cookie));
419- static_assert (offsetof(VmBindOpExtAttachDebug, reserved) == offsetof(drm_xe_vm_bind_op_ext_attach_debug, reserved));
420-
421348} // namespace NEO
0 commit comments