[PATCH i-g-t v4 00/17] Test coverage for GPU debug support
Christoph Manszewski
christoph.manszewski at intel.com
Fri Aug 23 18:22:05 UTC 2024
Hi,
In this series the eudebug kernel and validation team would like to
add test coverage for GPU debug support recently proposed as an RFC.
(https://patchwork.freedesktop.org/series/136572/)
This series adds 'xe_eudebug' and 'xe_eudebug_online' tests together
with a library that encapsulates common paths in current and future
EU debugger scenarios. It also extends the 'xe_exec_sip' test and
'gpgpu_shader' library.
The aim of the 'xe_eudebug' test is to validate the eudebug resource
tracking and event delivery mechanism. The 'xe_eudebug_online' test is
dedicated for 'online' scenarios which means scenarios that exercise
hardware exception handling and thread state manipulation.
The xe_eudebug library provides an abstraction over debugger and debuggee
processes, asynchronous event reader, and event log buffers for post-mortem
analysis.
Latest kernel code can be found here:
https://gitlab.freedesktop.org/miku/kernel/-/commits/eudebug-dev
Thank you in advance for any comments and insight.
v2:
- make sure to include all patches and verify that each individual
patch compiles (Zbigniew)
v3:
- fix multiple typos (Dominik Karol),
- squash subtest and eudebug lib patches (Zbigniew),
- include uapi sync/fix (Kamil)
v4:
- move all eudebug uapi changes to xe_drm_eudebug.h (Zbigniew),
- move some 'xe_exec_sip' tests to 'xe_exec_sip_eudebug' test (Zbigniew),
- control eudebug lib and test build with meson flag and disable it by
default (Zbigniew),
- fix multiple checkpatch issues (Kamil),
- apply review comments from Dominik,
Andrzej Hajda (5):
lib/gpgpu_shader: Add write_on_exception template
lib/gpgpu_shader: Add set/clear exception register (cr0.1) helpers
lib/intel_batchbuffer: Add helper to get pointer at specified offset
lib/gpgpu_shader: Allow enabling illegal opcode exceptions in shader
tests/xe_exec_sip: Introduce invalid instruction tests
Christoph Manszewski (7):
drm-uapi/xe: Sync with oa uapi fix
lib/xe_ioctl: Add wrapper with vm_bind_op extension parameter
lib/gpgpu_shader: Extend shader building library
tests/xe_exec_sip: Add sanity-after-timeout test
scripts/igt_doc: Add '--exclude-files' parameter
tests/xe_exec_sip_eudebug: Add SIP tests for eudebug
tests/xe_live_ktest: Add xe_eudebug live test
Dominik Grzegorzek (4):
drm-uapi/xe: Sync with eudebug uapi
lib/xe_eudebug: Introduce eu debug testing framework
tests/xe_eudebug: Test eudebug resource tracking and manipulation
tests/xe_eudebug_online: Debug client which runs workloads on EU
Gwan-gyeong Mun (1):
lib/intel_batchbuffer: Add support for long-running mode execution
docs/testplan/meson.build | 22 +-
include/drm-uapi/xe_drm.h | 16 +-
include/drm-uapi/xe_drm_eudebug.h | 332 ++++
lib/gpgpu_shader.c | 474 ++++-
lib/gpgpu_shader.h | 29 +-
lib/iga64_generated_codes.c | 547 +++++-
lib/intel_batchbuffer.c | 153 +-
lib/intel_batchbuffer.h | 22 +
lib/meson.build | 5 +
lib/xe/xe_eudebug.c | 2203 +++++++++++++++++++++++
lib/xe/xe_eudebug.h | 212 +++
lib/xe/xe_ioctl.c | 20 +-
lib/xe/xe_ioctl.h | 5 +
meson.build | 2 +
meson_options.txt | 5 +
scripts/igt_doc.py | 3 +
scripts/test_list.py | 47 +-
tests/intel/xe_eudebug.c | 2719 +++++++++++++++++++++++++++++
tests/intel/xe_eudebug_online.c | 2255 ++++++++++++++++++++++++
tests/intel/xe_exec_sip.c | 142 +-
tests/intel/xe_exec_sip_eudebug.c | 346 ++++
tests/intel/xe_live_ktest.c | 6 +
tests/meson.build | 8 +
23 files changed, 9520 insertions(+), 53 deletions(-)
create mode 100644 include/drm-uapi/xe_drm_eudebug.h
create mode 100644 lib/xe/xe_eudebug.c
create mode 100644 lib/xe/xe_eudebug.h
create mode 100644 tests/intel/xe_eudebug.c
create mode 100644 tests/intel/xe_eudebug_online.c
create mode 100644 tests/intel/xe_exec_sip_eudebug.c
--
2.34.1
More information about the igt-dev
mailing list