Commit Graph

151 Commits

Author SHA1 Message Date
Jemale Lockett
0426603896 fix: Add module debug area to isamap and mirror for xe
Resolves: NEO-12685

Signed-off-by: Jemale Lockett <jemale.lockett@intel.com>
2024-11-22 21:04:13 +01:00
Jemale Lockett
ef8fefec28 fix: correct check for interrupt sent in tile debug sessions
Resolves: NEO-12222
Signed-off-by: Jemale Lockett <jemale.lockett@intel.com>
2024-11-20 23:48:10 +01:00
Brandon Yates
aaf2e997d3 fix: Set xe debugger clientHandle when metadata is rx'd
Xe debugger will receive one CLIENT_OPEN event per driver open. In
some use cases their will be multiple opens. We are only interested in
the open from the UMD under debug. Setting clientHandle when metadata is
received will filter out unneeded CLIENT_OPEN events

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-11-05 13:44:59 +01:00
Jitendra Sharma
171f1e27a3 fix: Add debug variables for configurable timeouts in debugger
Related-To: NEO-13046
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-10-23 10:30:03 +02:00
Jitendra Sharma
26709ba124 fix: Implement polling of SW FIFO
Related-To: NEO-12955
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-10-21 07:19:42 +02:00
Brandon Yates
6de2f1a9c9 fix: Remove stopped Threads query
Related-to: NEO-12929

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-10-15 23:23:11 +02:00
Mateusz Jablonski
8fbe873e1b build: correct setting for i915/xe prelim setting in package scripts
rename i915 flag to uppercase, for consistency
disable i915 / xe prelim by default in package scripts

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-10-09 15:55:59 +02:00
Brandon Yates
be295ef9a0 fix: Fix debugger module load before eventsToAck updated
This fixes an uncommon race condition in processing vmBinds in debugger
where occasionally a VMBind may go unacked.

Related-to: NEO-12866

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-10-04 10:21:12 +02:00
Brandon Yates
9e03c52e71 refactor: Make page fault event handling generic for xe/i915
Related-to: NEO-10134

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-10-01 09:52:39 +02:00
Jitendra Sharma
ac52a2ff5b feature: Before resuming the thread unlock them
Related-To: NEO-7988
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-09-21 09:25:12 +02:00
Jemale Lockett
f14af782b3 fix: Correct mirroring module debug area
Resolves: NEO-11883

Signed-off-by: Jemale Lockett <jemale.lockett@intel.com>
2024-09-16 12:31:23 +02:00
Mateusz Jablonski
7ac41615cd fix: create thread with function pointer
don't create async thread in neo shared tests

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-08-21 18:02:37 +02:00
Jitendra Sharma
6df6e4bbb0 feature: Add SW FIFO implementation
Related-To: NEO-7990
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-08-19 16:38:34 +02:00
Brandon Yates
63478808a7 feature: implement new registers for debugger
Related-to: NEO-8396

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-07-15 09:44:46 +02:00
Brandon Yates
a432bdecc1 refactor: Reorganize xe debugger includes
Related-to: NEO-11365

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-07-02 12:28:11 +02:00
Brandon Yates
e01d34741d refactor(debugger): Locally allocate euControl variable in thread ctrl
Avoids possible unique_ptr memory escape after free

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-05-20 11:38:52 +02:00
Brandon Yates
7dfdbc33eb fix(debugger): Send pf event to correct tile session
Related-to: GSD-9128

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-05-17 15:29:55 +02:00
Brandon Yates
a0cb7b0a14 fix(debugger): Add page fault address to L0 PF event
Related-to: GSD-9110

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-05-15 18:20:43 +02:00
Brandon Yates
80a5d6255e feature(debugger): Discard stale ATT events
Related-to: NEO-10922

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-05-15 15:46:26 +02:00
Jitendra Sharma
8a60257aac fix: Implement debug area read in Xe by reusing I915 logic
Related-To: NEO-11197
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-05-07 20:19:20 +02:00
Jitendra Sharma
06935f87d7 fix: Eudebug: read one event for each poll in internal event thread
Related-To: NEO-11188
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-04-30 19:55:31 +02:00
Brandon Yates
946b8b8c4b fix(debugger): Dont use thread to get lrc handle for STOPPED command
Related-to: NEO-11250

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-04-30 18:08:13 +02:00
Brandon Yates
b2a382c4bc fix: set debugger client handle at vm open event (xe)
Related-to: NEO-10922

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-04-29 14:56:14 +02:00
Jitendra Sharma
c5a76cac3a fix: Reduce code duplicity by reusing closeConnection
Related-To: NEO-11188
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-04-23 08:34:04 +02:00
Brandon Yates
1db2bd82c1 fix: Fix vm unbind processing in dbgUMD (Xe)
Related-to: NEO-8407

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-04-18 13:29:21 +02:00
Jitendra Sharma
19130dda29 fix: modify vmBind event handling conditions
handleVmBind only if all the num_binds and num_extension events
and UFENCE events have arrived.

Related-To: NEO-11083
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-04-09 09:38:24 +02:00
Jitendra Sharma
27c3a4753d fix: Add missing methods in asyncThreadFunction
Add generateEventsAndResumeStoppedThreads() and sendInterrupts()
in asyncThreadFunction().

Related-To: NEO-11014
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-04-02 14:48:17 +02:00
Jitendra Sharma
8ef6cdbabd fix: Send module_load event after processing all events in vm_bind
Related-To: NEO-8407
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-04-02 11:17:58 +02:00
Jitendra Sharma
96abe38c6d feature: Implement getElfSize and getElfData methods for XE eudebug
Related-To: NEO-8407
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-03-28 12:32:18 +01:00
Jitendra Sharma
f0bdd5765b refactor: share acknowledgeEvent code for I915 and XE
Also remove not needed resumeImp and interruptImp methods
from level_zero/tools/source/debug/linux/xe/debug_session.h
The correct implementation is in DebugSessionLinux and
the overrides in DebugSessionLinuxXe are not needed

Related-To: NEO-8407
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-03-22 18:45:58 +01:00
Jitendra Sharma
b8c27ddb20 feature: Implement VM_BIND EU debug event for XE
Related-To: NEO-8407
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-03-22 15:02:49 +01:00
Brandon Yates
df54d67f40 feature: Implement SBA and module debug access for xe debugger
Reuse code from i915 implementation for accesing SBA, module debug,
and context save area

Related-to: NEO-9161

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-03-22 10:50:02 +01:00
Brandon Yates
7f8bac7703 fix: Remove Xe Debug stubs for read/writeMemory
The correct implementation is in DebugSessionLinux and
the overrides in DebugSessionLinuxXe are not needed

Related-to: NEO-9669

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-03-20 08:43:28 +01:00
Mateusz Jablonski
a2742492ab feature: enable xe drm detection by default
driver is built with xe drm support by default

added cmake flag to control xe eu debug API support
NEO_ENABLE_XE_EU_DEBUG_SUPPORT

This flag is disabled by default and uapi-eu-debug headers are not
needed for driver compilation as these headers are not a part of
upstream kernel yet.

Related-To: NEO-10780

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-03-19 08:47:13 +01:00
Mateusz Jablonski
19dcc80e44 Revert "build: enable xe drm detection by default"
This reverts commit 973757a58d.

Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-03-18 09:04:59 +01:00
Mateusz Jablonski
973757a58d build: enable xe drm detection by default
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-03-11 14:29:20 +01:00
Jitendra Sharma
e1e1c0d046 feature: Implement metadata create event handling in XE
Related-To: NEO-8407
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-03-07 14:26:48 +01:00
Jitendra Sharma
5c4be8df54 fix: Ensure after EU_CONTROL IOCTL, bitmask ptr is not null
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-02-26 10:07:09 +01:00
Jitendra Sharma
2c10f5639e feature: Implement thread control and att event handling for xe
Related-To: NEO-9673
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-02-23 16:15:59 +01:00
Compute-Runtime-Validation
40cea2f6fe Revert "feature: Implement thread control and att event handling for xe"
This reverts commit fb73fad6d7.

Signed-off-by: Compute-Runtime-Validation <compute-runtime-validation@intel.com>
2024-02-23 05:00:21 +01:00
Jitendra Sharma
fb73fad6d7 feature: Implement thread control and att event handling for xe
Related-To: NEO-9673
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-02-22 15:24:35 +01:00
Brandon Yates
0f817d1db4 refactor: Move debugger IsaAllocation to common linux code
-replace i915 event with generic EventToAck type
-Move isamap to common Client Connection
-Move isa memory access functions to common linux imp

Related-to: NEO-9669

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-02-21 12:04:31 +01:00
Jitendra Sharma
f56babb2a9 refactor: Move common attention handling EuDebug code out of prelim
Move common attention handling code from prelim in common linux
debug_session(.h/.cpp) files.
This common code could be shared to handle attention events for
prelim and xe driver based Eu Debug

Related-To: NEO-9673
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-02-19 14:49:30 +01:00
Brandon Yates
0fb6f4bf3f refactor: make Debugger ClientConnection common for xe/i915
- Add base ClientConnection type and derived i915/xe types
- Add accessor function fo retreive ClientConnection
- Move getElfOffset to common linux code
- Add accessor functions for getElfSize and getElfData

Related-to: NEO-9669

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-02-15 11:27:10 +01:00
Brandon Yates
1e3d57b29a refactor: Move Debugger Mem Access to generic linux implementation
Related-to: NEO-9669

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-02-13 18:56:00 +01:00
Jitendra Sharma
ff604bda1b feature: Implement thread control for debugger in XE
Related-To: NEO-9668
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-02-12 19:46:28 +01:00
Brandon Yates
ea7ae7564f feature: Implement read/writeGpuMemory for Xe debugger
- makes prelim read/writeGpuMemory generic
- Implements Xe specific ioctls and fsyncs
- Refactors dbg IoctlHelper to use shared base class
for Xe and i915

Related-to: NEO-9668

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-02-08 22:09:59 +01:00
Jitendra Sharma
d69bb8ac15 refactor: Move common debugger methods out of prelim directory
Related-To: NEO-9668
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-02-06 12:45:58 +01:00
Jitendra Sharma
adef8fbc8d feature: Implement Process entry/exit event with xe
Related-To: NEO-9671

Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-02-06 08:40:34 +01:00
Jitendra Sharma
e8ca729002 feature: Add support to handle DRM_XE_EUDEBUG_EVENT_VM event
Related-To: NEO-8407

Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-01-24 15:57:32 +01:00