From: "Manszewski, Christoph" <christoph.manszewski@intel.com>
To: "Zbigniew Kempczyński" <zbigniew.kempczynski@intel.com>
Cc: igt-dev@lists.freedesktop.org,
"Kamil Konieczny" <kamil.konieczny@linux.intel.com>,
"Dominik Grzegorzek" <dominik.grzegorzek@intel.com>,
"Maciej Patelczyk" <maciej.patelczyk@intel.com>,
"Dominik Karol Piątkowski" <dominik.karol.piatkowski@intel.com>,
"Pawel Sikora" <pawel.sikora@intel.com>,
"Andrzej Hajda" <andrzej.hajda@intel.com>,
"Kolanupaka Naveena" <kolanupaka.naveena@intel.com>,
"Mika Kuoppala" <mika.kuoppala@intel.com>,
"Gwan-gyeong Mun" <gwan-gyeong.mun@intel.com>
Subject: Re: [PATCH i-g-t v2 00/66] Test coverage for GPU debug support
Date: Thu, 8 Aug 2024 13:42:21 +0200 [thread overview]
Message-ID: <8e7eb0ec-a7a8-4b66-a189-76efb7622e04@intel.com> (raw)
In-Reply-To: <20240808111339.4kttfliosn6y525a@zkempczy-mobl2>
Hi Zbigniew,
On 8.08.2024 13:13, Zbigniew Kempczyński wrote:
> On Tue, Jul 30, 2024 at 01:44:17PM +0200, Christoph Manszewski wrote:
>> 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.
>
> May I ask to just divide series to library and tests part where
> library changes is in few patches max, then tests in separate
> patches? I've noticed through rough walk through the series
> some code appears in some patches, whereas it disappears in
> others. I mean I would like to review final state of the code
> instead going through the history of the development eudebug
> feature. Upstreaming Xe driver igts was also done in similar way
> in few commits only. If you think some commit messages might
> be interesting from the future perspective please keep them
> during squashing.
Makes sense, I will try to squash patches for the next revision.
Thanks,
Christoph
>
> --
> Zbigniew
>
>>
>> v2:
>> - make sure to include all patches and verify that each individual
>> patch compiles (Zbigniew)
>>
>> Andrzej Hajda (6):
>> tests/xe_eudebug: Add userptr variant of basic-vm-access test
>> 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: Rework invalid instruction tests
>>
>> Christoph Manszewski (17):
>> lib/xe_ioctl: Add wrapper with vm_bind_op extension parameter
>> lib/xe_eudebug: Add support for vm_bind events
>> lib/xe_eudebug: Add support for user fence acking
>> lib/xe_eudebug: Add support for dynamic debugger sysfs toggle
>> tests/xe_eudebug: Add basic vm-bind coverage
>> tests/xe_eudebug: Add support for dynamic debugger sysfs toggle
>> tests/xe_eudebug: Add coverage for sysfs debugger toggle
>> lib/xe_eudebug: Allow debugger to wait for client
>> tests/xe_eudebug: Add vm-bind discovery tests
>> tests/xe_eudebug: Add basic-vm-bind-ufence
>> tests/xe_eudebug: Add vm-bind-clear test
>> lib/gpgpu_shader: Extend shader building library
>> tests/xe_exec_sip: Port tests for shaders and sip
>> tests/xe_exec_sip: Add support for dynamic debugger sysfs toggle
>> tests/xe_eudebug_online: Add support for dynamic debugger sysfs toggle
>> tests/xe_eudebug_online: Add subtests w/o long running mode
>> tests/xe_live_ktest: Add xe_eudebug live test
>>
>> Dominik Grzegorzek (18):
>> drm-uapi/xe: Sync with eudebug uapi
>> tests/xe_eudebug: Test eudebug connection
>> lib/xe_eudebug: Introduce eu debug testing framework
>> lib/xe_eudebug: Add exec_queue support
>> lib/xe_eudebug: Add attention events support
>> lib/xe_eudebug: Add metadata support
>> tests/xe_eudebug: Test open close events
>> tests/xe_eudebug: Exercise read_event ioctl
>> tests/xe_eudebug: Add vm events sanity check
>> tests/xe_eudebug: Race discovery against eudebug attach.
>> tests/xe_eudebug: Introduce basic exec_queue testing
>> tests/xe_eudebug: Include exec queues in discovery testing
>> tests/xe_exec_sip: Check if we reset due to unhandled attention
>> tests/xe_exec_sip: Check usercoredump for attentions
>> tests/xe_eudebug_online: Debug client which runs workloads on EU
>> tests/xe_eudebug_online: Set dynamic breakpoint on interrupt-all
>> tests/xe_eudebug_online: What if user does not set debug mode?
>> tests/xe_eudebug_online: Check if eu debugger disables preemption
>> timeout
>>
>> Dominik Karol Piatkowski (1):
>> tests/xe_eudebug_online: Add caching tests
>>
>> Dominik Karol Piątkowski (5):
>> tests/xe_eudebug: Add multigpu scenarios
>> tests/xe_exec_sip: Add breakpoint-writesip-twice test
>> tests/xe_exec_sip: Add breakpoint-waitsip-heavy test
>> tests/xe_eudebug_online: Add tdctl-parameters test
>> tests/xe_eudebug_online: Add single-step and single-step-one tests
>>
>> Gwan-gyeong Mun (1):
>> lib/intel_batchbuffer: Add support for long-running mode execution
>>
>> Jonathan Cavitt (2):
>> tests/xe_eudebug: Exercise lseek
>> tests/xe_eudebug: Test multiple bo sizes
>>
>> Karolina Stolarek (6):
>> tests/xe_eudebug: Add discovery-race-vmbind subtest
>> tests/xe_exec_sip: Add sanity-after-timeout test
>> tests/xe_exec_sip: Add nodebug test cases
>> lib/xe_eudebug: Expose xe_eudebug_connect
>> tests/xe_eudebug_online: Add interrupt-reconnect test
>> tests/xe_eudebug_online: Add multisession test cases
>>
>> Kolanupaka Naveena (1):
>> tests/xe_eudebug_online: Adds debugger-reopen test
>>
>> Maciej Patelczyk (3):
>> tests/xe_eudebug: Exercise debug metadata events sent to debugger
>> tests/xe_eudebug: Add basic-vm-bind-metadata-discovery
>> tests/xe_eudebug: Added connect-user test
>>
>> Mika Kuoppala (2):
>> lib/xe_eudebug: Allow client to wait for debugger
>> tests/xe_eudebug: Add vm open/pread/pwrite basic tests
>>
>> Pawel Sikora (4):
>> tests/xe_eudebug: Add basic-vm-access-parameters test
>> lib/xe_eudebug: Add mutex for log events write
>> tests/xe_eudebug: Add basic-client-th test
>> tests/xe_eudebug_online: Add reset-with-attention test
>>
>> include/drm-uapi/xe_drm.h | 104 +-
>> include/drm-uapi/xe_drm_eudebug.h | 226 +++
>> lib/gpgpu_shader.c | 474 +++++-
>> lib/gpgpu_shader.h | 29 +-
>> lib/iga64_generated_codes.c | 428 ++++-
>> lib/intel_batchbuffer.c | 153 +-
>> lib/intel_batchbuffer.h | 22 +
>> lib/meson.build | 1 +
>> lib/xe/xe_eudebug.c | 2192 ++++++++++++++++++++++++++
>> lib/xe/xe_eudebug.h | 206 +++
>> lib/xe/xe_ioctl.c | 20 +-
>> lib/xe/xe_ioctl.h | 5 +
>> tests/intel/xe_eudebug.c | 2425 +++++++++++++++++++++++++++++
>> tests/intel/xe_eudebug_online.c | 2117 +++++++++++++++++++++++++
>> tests/intel/xe_exec_sip.c | 332 +++-
>> tests/intel/xe_live_ktest.c | 6 +
>> tests/meson.build | 2 +
>> 17 files changed, 8701 insertions(+), 41 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
>>
>> --
>> 2.34.1
>>
prev parent reply other threads:[~2024-08-08 11:42 UTC|newest]
Thread overview: 113+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-30 11:44 [PATCH i-g-t v2 00/66] Test coverage for GPU debug support Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 01/66] drm-uapi/xe: Sync with eudebug uapi Christoph Manszewski
2024-08-08 13:18 ` Kamil Konieczny
2024-08-08 15:05 ` Manszewski, Christoph
2024-07-30 11:44 ` [PATCH i-g-t v2 02/66] tests/xe_eudebug: Test eudebug connection Christoph Manszewski
2024-08-01 9:16 ` Grzegorzek, Dominik
2024-08-02 10:14 ` Manszewski, Christoph
2024-08-01 9:30 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 03/66] lib/xe_eudebug: Introduce eu debug testing framework Christoph Manszewski
2024-08-01 11:18 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 04/66] lib/xe_eudebug: Allow client to wait for debugger Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 05/66] lib/xe_eudebug: Add exec_queue support Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 06/66] lib/xe_eudebug: Add attention events support Christoph Manszewski
2024-08-01 11:20 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 07/66] lib/xe_ioctl: Add wrapper with vm_bind_op extension parameter Christoph Manszewski
2024-08-01 11:23 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 08/66] lib/xe_eudebug: Add support for vm_bind events Christoph Manszewski
2024-08-01 11:28 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 09/66] lib/xe_eudebug: Add metadata support Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 10/66] lib/xe_eudebug: Add support for user fence acking Christoph Manszewski
2024-08-01 11:34 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 11/66] lib/xe_eudebug: Add support for dynamic debugger sysfs toggle Christoph Manszewski
2024-08-01 11:51 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 12/66] tests/xe_eudebug: Test open close events Christoph Manszewski
2024-08-01 11:53 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 13/66] tests/xe_eudebug: Exercise read_event ioctl Christoph Manszewski
2024-08-01 12:01 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 14/66] tests/xe_eudebug: Add vm events sanity check Christoph Manszewski
2024-08-01 12:04 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 15/66] tests/xe_eudebug: Race discovery against eudebug attach Christoph Manszewski
2024-08-01 12:08 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 16/66] tests/xe_eudebug: Introduce basic exec_queue testing Christoph Manszewski
2024-08-01 12:15 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 17/66] tests/xe_eudebug: Include exec queues in discovery testing Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 18/66] tests/xe_eudebug: Add vm open/pread/pwrite basic tests Christoph Manszewski
2024-08-01 12:20 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 19/66] tests/xe_eudebug: Add basic vm-bind coverage Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 20/66] tests/xe_eudebug: Exercise debug metadata events sent to debugger Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 21/66] tests/xe_eudebug: Add support for dynamic debugger sysfs toggle Christoph Manszewski
2024-08-01 12:25 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 22/66] tests/xe_eudebug: Add coverage for sysfs debugger toggle Christoph Manszewski
2024-08-01 12:28 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 23/66] lib/xe_eudebug: Allow debugger to wait for client Christoph Manszewski
2024-08-01 12:31 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 24/66] tests/xe_eudebug: Add vm-bind discovery tests Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 25/66] tests/xe_eudebug: Add basic-vm-bind-metadata-discovery Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 26/66] tests/xe_eudebug: Add basic-vm-access-parameters test Christoph Manszewski
2024-08-01 12:42 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 27/66] lib/xe_eudebug: Add mutex for log events write Christoph Manszewski
2024-08-01 12:43 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 28/66] tests/xe_eudebug: Add basic-client-th test Christoph Manszewski
2024-08-01 12:49 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 29/66] tests/xe_eudebug: Added connect-user test Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 30/66] tests/xe_eudebug: Add discovery-race-vmbind subtest Christoph Manszewski
2024-08-01 6:25 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 31/66] tests/xe_eudebug: Add userptr variant of basic-vm-access test Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 32/66] tests/xe_eudebug: Add basic-vm-bind-ufence Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 33/66] tests/xe_eudebug: Add multigpu scenarios Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 34/66] tests/xe_eudebug: Add vm-bind-clear test Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 35/66] tests/xe_eudebug: Exercise lseek Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 36/66] tests/xe_eudebug: Test multiple bo sizes Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 37/66] lib/gpgpu_shader: Extend shader building library Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 38/66] tests/xe_exec_sip: Port tests for shaders and sip Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 39/66] tests/xe_exec_sip: Check if we reset due to unhandled attention Christoph Manszewski
2024-08-01 12:57 ` Piatkowski, Dominik Karol
2024-08-01 19:04 ` Grzegorzek, Dominik
2024-07-30 11:44 ` [PATCH i-g-t v2 40/66] tests/xe_exec_sip: Check usercoredump for attentions Christoph Manszewski
2024-07-30 11:44 ` [PATCH i-g-t v2 41/66] tests/xe_exec_sip: Add support for dynamic debugger sysfs toggle Christoph Manszewski
2024-08-01 12:58 ` Piatkowski, Dominik Karol
2024-07-30 11:44 ` [PATCH i-g-t v2 42/66] tests/xe_exec_sip: Add breakpoint-writesip-twice test Christoph Manszewski
2024-07-30 11:45 ` [PATCH i-g-t v2 43/66] tests/xe_exec_sip: Add sanity-after-timeout test Christoph Manszewski
2024-08-01 7:08 ` Piatkowski, Dominik Karol
2024-07-30 11:45 ` [PATCH i-g-t v2 44/66] tests/xe_exec_sip: Add breakpoint-waitsip-heavy test Christoph Manszewski
2024-07-30 11:45 ` [PATCH i-g-t v2 45/66] tests/xe_exec_sip: Add nodebug test cases Christoph Manszewski
2024-08-01 7:23 ` Piatkowski, Dominik Karol
2024-07-30 11:45 ` [PATCH i-g-t v2 46/66] lib/gpgpu_shader: Add write_on_exception template Christoph Manszewski
2024-07-30 11:45 ` [PATCH i-g-t v2 47/66] lib/gpgpu_shader: Add set/clear exception register (cr0.1) helpers Christoph Manszewski
2024-07-30 11:45 ` [PATCH i-g-t v2 48/66] lib/intel_batchbuffer: Add helper to get pointer at specified offset Christoph Manszewski
2024-07-30 11:45 ` [PATCH i-g-t v2 49/66] lib/gpgpu_shader: Allow enabling illegal opcode exceptions in shader Christoph Manszewski
2024-07-30 11:45 ` [PATCH i-g-t v2 50/66] tests/xe_exec_sip: Rework invalid instruction tests Christoph Manszewski
2024-08-01 19:22 ` Grzegorzek, Dominik
2024-07-30 11:45 ` [PATCH i-g-t v2 51/66] lib/intel_batchbuffer: Add support for long-running mode execution Christoph Manszewski
2024-07-30 11:45 ` [PATCH i-g-t v2 52/66] tests/xe_eudebug_online: Debug client which runs workloads on EU Christoph Manszewski
2024-07-30 11:45 ` [PATCH i-g-t v2 53/66] tests/xe_eudebug_online: Set dynamic breakpoint on interrupt-all Christoph Manszewski
2024-08-05 6:27 ` Piatkowski, Dominik Karol
2024-07-30 11:45 ` [PATCH i-g-t v2 54/66] tests/xe_eudebug_online: Add support for dynamic debugger sysfs toggle Christoph Manszewski
2024-08-05 6:30 ` Piatkowski, Dominik Karol
2024-07-30 11:45 ` [PATCH i-g-t v2 55/66] tests/xe_eudebug_online: Add tdctl-parameters test Christoph Manszewski
2024-07-30 11:45 ` [PATCH i-g-t v2 56/66] tests/xe_eudebug_online: Add reset-with-attention test Christoph Manszewski
2024-08-05 6:46 ` Piatkowski, Dominik Karol
2024-07-30 11:45 ` [PATCH i-g-t v2 57/66] lib/xe_eudebug: Expose xe_eudebug_connect Christoph Manszewski
2024-08-05 6:48 ` Piatkowski, Dominik Karol
2024-07-30 11:45 ` [PATCH i-g-t v2 58/66] tests/xe_eudebug_online: Add interrupt-reconnect test Christoph Manszewski
2024-08-05 7:53 ` Piatkowski, Dominik Karol
2024-07-30 11:45 ` [PATCH i-g-t v2 59/66] tests/xe_eudebug_online: Add single-step and single-step-one tests Christoph Manszewski
2024-07-30 11:45 ` [PATCH i-g-t v2 60/66] tests/xe_eudebug_online: What if user does not set debug mode? Christoph Manszewski
2024-08-05 7:55 ` Piatkowski, Dominik Karol
2024-07-30 11:45 ` [PATCH i-g-t v2 61/66] tests/xe_eudebug_online: Adds debugger-reopen test Christoph Manszewski
2024-08-01 8:22 ` Piatkowski, Dominik Karol
2024-07-30 11:45 ` [PATCH i-g-t v2 62/66] tests/xe_eudebug_online: Add caching tests Christoph Manszewski
2024-08-01 12:52 ` Piatkowski, Dominik Karol
2024-07-30 11:45 ` [PATCH i-g-t v2 63/66] tests/xe_eudebug_online: Add subtests w/o long running mode Christoph Manszewski
2024-08-01 9:09 ` Piatkowski, Dominik Karol
2024-08-01 19:27 ` Grzegorzek, Dominik
2024-07-30 11:45 ` [PATCH i-g-t v2 64/66] tests/xe_eudebug_online: Add multisession test cases Christoph Manszewski
2024-07-30 11:45 ` [PATCH i-g-t v2 65/66] tests/xe_eudebug_online: Check if eu debugger disables preemption timeout Christoph Manszewski
2024-07-30 11:45 ` [PATCH i-g-t v2 66/66] tests/xe_live_ktest: Add xe_eudebug live test Christoph Manszewski
2024-07-30 16:15 ` ✗ GitLab.Pipeline: warning for Test coverage for GPU debug support (rev2) Patchwork
2024-07-30 16:23 ` ✓ CI.xeBAT: success " Patchwork
2024-07-30 16:36 ` ✗ Fi.CI.BAT: failure " Patchwork
2024-07-30 17:16 ` ✗ CI.xeFULL: " Patchwork
2024-08-08 11:13 ` [PATCH i-g-t v2 00/66] Test coverage for GPU debug support Zbigniew Kempczyński
2024-08-08 11:42 ` Manszewski, Christoph [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8e7eb0ec-a7a8-4b66-a189-76efb7622e04@intel.com \
--to=christoph.manszewski@intel.com \
--cc=andrzej.hajda@intel.com \
--cc=dominik.grzegorzek@intel.com \
--cc=dominik.karol.piatkowski@intel.com \
--cc=gwan-gyeong.mun@intel.com \
--cc=igt-dev@lists.freedesktop.org \
--cc=kamil.konieczny@linux.intel.com \
--cc=kolanupaka.naveena@intel.com \
--cc=maciej.patelczyk@intel.com \
--cc=mika.kuoppala@intel.com \
--cc=pawel.sikora@intel.com \
--cc=zbigniew.kempczynski@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox