Commit Graph

289 Commits

Author SHA1 Message Date
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
Jitendra Sharma 9bd4878841 feature: update GRF register implementation
Related-To: NEO-8314
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-10-15 13:47:34 +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
Jitendra Sharma a111c18fb1 refactor: Add timestamp to all debugger log
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-10-08 18:12:20 +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 013c49db02 fix: change getBindlessDebugSipKernel to also get heapless sip
Rename function to getDebugSipKernel and select either bindless
or heapless depending on mode

Related-to: NEO-8396

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-10-03 20:47:40 +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 733ca5ac28 fix: Write tail index even for fifo wrap around case
Related-To: NEO-7990
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-09-30 18:19:28 +02:00
Jitendra Sharma 2ed2cb43db fix: Read fifo_head from state save area header correctly
Currently we are reading fifo_head from local copy of saved
stateSaveAreaHeader.
However, during fifo read dbgUMD is reading FIFO entries and
accordingly SIP would also update fifo_head.
Hence while accessing fifo_head, ensure that we always read
fifo_head from latest in memory state save area header.

Related-To: NEO-12787
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-09-25 10:44:41 +02:00
Jitendra Sharma 0b3a6df5db fix: Take regset_desc from correct SSH based on version major
Related-To: NEO-7988
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-09-24 12:31:21 +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 fafc0e10dc refactor: remove not needed code
Signed-off-by: Mateusz Jablonski <mateusz.jablonski@intel.com>
2024-09-13 17:52:35 +02:00
Filip Hazubski f87673e761 fix: Add missing check to DebugSessionImp::readFifo function
Signed-off-by: Filip Hazubski <filip.hazubski@intel.com>
2024-08-22 15:19:43 +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
Mateusz Hoppe 4c3a0d8344 fix: add missing sba capture when debug enabled
- In global bindless mode SBA may be programmed for scratch allocation,
missing sba capturing caused issues for kernels with scratch.
- this fix adds SBA capturing after SBA command

Related-To: NEO-7063

Signed-off-by: Mateusz Hoppe <mateusz.hoppe@intel.com>
2024-08-20 09:32:17 +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 ab92499b56 feature: Add support for V3 state save header
Related-to: NEO-8396

Signed-off-by: Brandon Yates <brandon.yates@intel.com>
2024-06-27 18:46:03 +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 349a86a8dc fix: Read SR register correctly for large GRF detection.
Related-To: NEO-11377
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-05-08 22:03:00 +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
Katarzyna Cencelewska e9f7df6ae6 refactor: create helper for maxPtssIndex
Signed-off-by: Katarzyna Cencelewska <katarzyna.cencelewska@intel.com>
2024-05-07 12:47:52 +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
Jitendra Sharma 74f8eedf1e refactor: print threadSlotOffset and srMagicOffset
Signed-off-by: Jitendra Sharma <jitendra.sharma@intel.com>
2024-04-30 19:51:20 +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
Jemale Lockett 79f8993220 refactor: move GPR15 to separate debugger context
Signed-off-by: Jemale Lockett <jemale.lockett@intel.com>
2024-04-18 10:42:23 +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