From: Christoph Manszewski <christoph.manszewski@intel.com>
To: igt-dev@lists.freedesktop.org
Cc: "Piotr Rudnicki" <piotr.rudnicki@intel.com>,
"Dominik Karol Piątkowski" <dominik.karol.piatkowski@intel.com>,
"Jan Sokolowski" <jan.sokolowski@intel.com>
Subject: [PATCH i-g-t v5 0/5] Improve eudebug test cleanup
Date: Wed, 11 Mar 2026 12:06:37 +0100 [thread overview]
Message-ID: <20260311110636.798120-7-christoph.manszewski@intel.com> (raw)
When there is a debugger fd open and an assert fails, there is a problem
with environment cleanup. If enable_eudebug toggle was previously off,
it is impossible to turn it off in case there is _any_ open debugger fd.
Keep track of all opened debugger fds in lib/xe_eudebug and close any
leftover ones before attempting to restore enable_eudebug state.
Change pthread_join to pthread_timedjoin_np in discovery-race* and
discoery-empty* tests to avoid hang before reaching cleanup.
Add retry mechanism in xe_eudebug_enable to allow the postclose handler
to finish. Abort on unsuccessful cleanup to not leave the environment
in potentially dirty state.
v2:
- Preserve skip behavior in xe_eudebug_enable
v3:
- Improve xe_eudebug_enable logging
- Move session tracking to lib/xe_eudebug
- Use timedjoin in discovery-empty*
v4:
- fix commit msg typo (Dominik)
- remove wrong 'debugger reconnected' log that was printed also for
initial connection and change code reuse/organization for
attach/reattach functions (Dominik)
v5:
- move assertion and list entry creation out of critical section (Piotr)
Christoph Manszewski (3):
xe/xe_eudebug: Add reattach function and make plain connect private
lib/xe/xe_eudebug: Track active debugger sessions and close when
disabling
lib/xe/xe_eudebug: Get drm card sysfs path
Dominik Karol Piątkowski (2):
tests/xe/xe_eudebug: Change pthread_join to pthread_timedjoin_np
lib/xe/xe_eudebug: Modify toggle error handling
lib/xe/xe_eudebug.c | 214 +++++++++++++++++++++++++-------
lib/xe/xe_eudebug.h | 2 +-
tests/intel/xe_eudebug.c | 13 +-
tests/intel/xe_eudebug_online.c | 6 +-
4 files changed, 181 insertions(+), 54 deletions(-)
--
2.47.1
next reply other threads:[~2026-03-11 11:06 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-11 11:06 Christoph Manszewski [this message]
2026-03-11 11:06 ` [PATCH i-g-t v5 1/5] tests/xe/xe_eudebug: Change pthread_join to pthread_timedjoin_np Christoph Manszewski
2026-03-11 11:06 ` [PATCH i-g-t v5 2/5] lib/xe/xe_eudebug: Modify toggle error handling Christoph Manszewski
2026-03-11 11:06 ` [PATCH i-g-t v5 3/5] xe/xe_eudebug: Add reattach function and make plain connect private Christoph Manszewski
2026-03-11 11:06 ` [PATCH i-g-t v5 4/5] lib/xe/xe_eudebug: Track active debugger sessions and close when disabling Christoph Manszewski
2026-03-11 11:06 ` [PATCH i-g-t v5 5/5] lib/xe/xe_eudebug: Get drm card sysfs path Christoph Manszewski
2026-03-12 0:04 ` ✓ Xe.CI.BAT: success for Improve eudebug test cleanup (rev5) Patchwork
2026-03-12 0:07 ` ✓ i915.CI.BAT: " Patchwork
2026-03-12 19:08 ` ✓ i915.CI.Full: " Patchwork
2026-03-12 19:10 ` ✗ Xe.CI.FULL: failure " Patchwork
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=20260311110636.798120-7-christoph.manszewski@intel.com \
--to=christoph.manszewski@intel.com \
--cc=dominik.karol.piatkowski@intel.com \
--cc=igt-dev@lists.freedesktop.org \
--cc=jan.sokolowski@intel.com \
--cc=piotr.rudnicki@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