From: Maarten Lankhorst <dev@lankhorst.se>
To: Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
Joonas Lahtinen <joonas.lahtinen@linux.intel.com>,
Tvrtko Ursulin <tursulin@ursulin.net>,
intel-gfx@lists.freedesktop.org
Cc: Maarten Lankhorst <dev@lankhorst.se>
Subject: [PATCH v5 6/6] drm/i915: Use sleeping selftests for igt_atomic on PREEMPT_RT
Date: Wed, 23 Sep 2026 13:15:25 +0200 [thread overview]
Message-ID: <20260923111518.310430-14-dev@lankhorst.se> (raw)
In-Reply-To: <20260923111518.310430-8-dev@lankhorst.se>
This makes the i915 selftests slightly happier, especially
related to GPU reset.
All of the i915 code that used to run in BH's, IRQ's, etc is
converted to preemptible code when compiled with PREEMPT_RT,
so adding coverage for those situations would require
This is a better approach than trying to convert all locks
in i915 from spinlock_t to to raw_spinlock_t just to increase
test coverage for situations that no longer happen.
Signed-off-by: Maarten Lankhorst <dev@lankhorst.se>
---
drivers/gpu/drm/i915/selftests/igt_atomic.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/drivers/gpu/drm/i915/selftests/igt_atomic.c b/drivers/gpu/drm/i915/selftests/igt_atomic.c
index fb506b6990956..8ae39cf570b76 100644
--- a/drivers/gpu/drm/i915/selftests/igt_atomic.c
+++ b/drivers/gpu/drm/i915/selftests/igt_atomic.c
@@ -39,7 +39,14 @@ static void __hardirq_end(void)
local_irq_enable();
}
+static void __maybe_unused __nop(void)
+{}
+
const struct igt_atomic_section igt_atomic_phases[] = {
+#if IS_ENABLED(CONFIG_PREEMPT_RT)
+ { "sleeping", __nop, __nop },
+ { },
+#endif
{ "preempt", __preempt_begin, __preempt_end },
{ "softirq", __softirq_begin, __softirq_end },
{ "hardirq", __hardirq_begin, __hardirq_end },
--
2.55.0
next prev parent reply other threads:[~2026-09-23 11:15 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-23 11:15 [PATCH v5 0/6] drm/i915: Most fixes to make i915 work well with PREEMPT_RT Maarten Lankhorst
2026-09-23 11:15 ` [PATCH v5 1/6] drm/i915/gt: Use spin_lock_irq() instead of local_irq_disable() + spin_lock() Maarten Lankhorst
2026-09-23 11:15 ` [PATCH v5 2/6] drm/i915: Drop the irqs_disabled() check Maarten Lankhorst
2026-09-23 11:15 ` [PATCH v5 3/6] drm/i915/guc: Consider also RCU depth in busy loop Maarten Lankhorst
2026-09-23 11:15 ` [PATCH v5 4/6] drm/i915/gt: Fix selftests on PREEMPT_RT Maarten Lankhorst
2026-09-23 14:26 ` Sebastian Andrzej Siewior
2026-09-23 11:15 ` [PATCH v5 5/6] drm/i915/gt: Set stop_timeout() correctly on PREEMPT-RT Maarten Lankhorst
2026-09-23 14:27 ` Sebastian Andrzej Siewior
2026-09-23 11:15 ` Maarten Lankhorst [this message]
2026-09-23 11:28 ` [PATCH v5 6/6] drm/i915: Use sleeping selftests for igt_atomic on PREEMPT_RT sashiko-bot
2026-09-23 14:27 ` Sebastian Andrzej Siewior
2026-09-23 12:55 ` ✓ i915.CI.BAT: success for drm/i915: Most fixes to make i915 work well with PREEMPT_RT Patchwork
2026-09-23 14:27 ` [PATCH v5 0/6] " Sebastian Andrzej Siewior
2026-09-24 6:30 ` ✓ i915.CI.Full: success for " 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=20260923111518.310430-14-dev@lankhorst.se \
--to=dev@lankhorst.se \
--cc=bigeasy@linutronix.de \
--cc=intel-gfx@lists.freedesktop.org \
--cc=joonas.lahtinen@linux.intel.com \
--cc=tursulin@ursulin.net \
/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