[RFC 00/19] Support EU online debug on pagefault
Gwan-gyeong Mun
gwan-gyeong.mun at intel.com
Mon Oct 21 09:58:39 UTC 2024
This RFC patch adds a KMD implementation to debug scenarios where
an EU thread causes a pagefault based on GPU Debug support [1].
Fixes code that uses force_wake_[get/put] to work on the latest xe-next,
as the previous version patch[1] does not use
"Fix xe_force_wake_get() failure handling" [2].
[1] https://patchwork.freedesktop.org/series/136572/#rev2
[2] https://patchwork.freedesktop.org/series/137982/
Andrzej Hajda (1):
drm/xe/eudebug: implement userptr_vma access
Christoph Manszewski (3):
drm/xe/eudebug: Add vm bind and vm bind ops
drm/xe/eudebug: Dynamically toggle debugger functionality
drm/xe/eudebug_test: Introduce xe_eudebug wa kunit test
Dominik Grzegorzek (8):
drm/xe/eudebug: Introduce exec_queue events
drm/xe/eudebug: hw enablement for eudebug
drm/xe: Add EUDEBUG_ENABLE exec queue property
drm/xe/eudebug: Introduce per device attention scan worker
drm/xe/eudebug: Introduce EU control interface
drm/xe: Debug metadata create/destroy ioctls
drm/xe: Attach debug metadata to vma
drm/xe/eudebug: Add debug metadata support for xe_eudebug
Gwan-gyeong Mun (1):
drm/xe/eudebug: Support EU online debug on pagefault
Mika Kuoppala (6):
ptrace: export ptrace_may_access
drm/xe/eudebug: Introduce eudebug support
drm/xe/eudebug: Introduce discovery for resources
drm/xe/eudebug: Add UFENCE events with acks
drm/xe/eudebug: vm open/pread/pwrite
drm/xe/eudebug: Implement vm_bind_op discovery
drivers/gpu/drm/xe/Kconfig | 10 +
drivers/gpu/drm/xe/Makefile | 4 +
drivers/gpu/drm/xe/regs/xe_engine_regs.h | 7 +
drivers/gpu/drm/xe/regs/xe_gt_regs.h | 43 +
drivers/gpu/drm/xe/tests/xe_eudebug.c | 175 +
drivers/gpu/drm/xe/tests/xe_live_test_mod.c | 5 +
drivers/gpu/drm/xe/xe_debug_metadata.c | 233 +
drivers/gpu/drm/xe/xe_debug_metadata.h | 98 +
drivers/gpu/drm/xe/xe_debug_metadata_types.h | 28 +
drivers/gpu/drm/xe/xe_device.c | 26 +-
drivers/gpu/drm/xe/xe_device.h | 36 +
drivers/gpu/drm/xe/xe_device_types.h | 47 +
drivers/gpu/drm/xe/xe_eudebug.c | 4147 ++++++++++++++++++
drivers/gpu/drm/xe/xe_eudebug.h | 110 +
drivers/gpu/drm/xe/xe_eudebug_types.h | 394 ++
drivers/gpu/drm/xe/xe_exec.c | 2 +-
drivers/gpu/drm/xe/xe_exec_queue.c | 56 +-
drivers/gpu/drm/xe/xe_exec_queue.h | 2 +
drivers/gpu/drm/xe/xe_exec_queue_types.h | 7 +
drivers/gpu/drm/xe/xe_execlist.c | 2 +-
drivers/gpu/drm/xe/xe_force_wake.c | 1 -
drivers/gpu/drm/xe/xe_gt_debug.c | 199 +
drivers/gpu/drm/xe/xe_gt_debug.h | 40 +
drivers/gpu/drm/xe/xe_gt_pagefault.c | 281 +-
drivers/gpu/drm/xe/xe_hw_engine.c | 1 +
drivers/gpu/drm/xe/xe_lrc.c | 16 +-
drivers/gpu/drm/xe/xe_lrc.h | 4 +-
drivers/gpu/drm/xe/xe_reg_sr.c | 21 +-
drivers/gpu/drm/xe/xe_reg_sr.h | 4 +-
drivers/gpu/drm/xe/xe_rtp.c | 2 +-
drivers/gpu/drm/xe/xe_sync.c | 43 +-
drivers/gpu/drm/xe/xe_sync.h | 8 +-
drivers/gpu/drm/xe/xe_sync_types.h | 28 +-
drivers/gpu/drm/xe/xe_vm.c | 194 +-
drivers/gpu/drm/xe/xe_vm.h | 5 +
drivers/gpu/drm/xe/xe_vm_types.h | 40 +
drivers/gpu/drm/xe/xe_wa_oob.rules | 2 +
include/uapi/drm/xe_drm.h | 96 +-
include/uapi/drm/xe_drm_eudebug.h | 237 +
kernel/ptrace.c | 1 +
40 files changed, 6597 insertions(+), 58 deletions(-)
create mode 100644 drivers/gpu/drm/xe/tests/xe_eudebug.c
create mode 100644 drivers/gpu/drm/xe/xe_debug_metadata.c
create mode 100644 drivers/gpu/drm/xe/xe_debug_metadata.h
create mode 100644 drivers/gpu/drm/xe/xe_debug_metadata_types.h
create mode 100644 drivers/gpu/drm/xe/xe_eudebug.c
create mode 100644 drivers/gpu/drm/xe/xe_eudebug.h
create mode 100644 drivers/gpu/drm/xe/xe_eudebug_types.h
create mode 100644 drivers/gpu/drm/xe/xe_gt_debug.c
create mode 100644 drivers/gpu/drm/xe/xe_gt_debug.h
create mode 100644 include/uapi/drm/xe_drm_eudebug.h
--
2.46.1
More information about the Intel-xe
mailing list