41 lines
1.4 KiB
Diff
41 lines
1.4 KiB
Diff
|
From: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||
|
Date: Fri, 1 Oct 2021 20:01:03 +0200
|
||
|
Subject: [PATCH 6/8] drm/i915: Drop the irqs_disabled() check
|
||
|
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/6.11/older/patches-6.11-rt7.tar.xz
|
||
|
|
||
|
The !irqs_disabled() check triggers on PREEMPT_RT even with
|
||
|
i915_sched_engine::lock acquired. The reason is the lock is transformed
|
||
|
into a sleeping lock on PREEMPT_RT and does not disable interrupts.
|
||
|
|
||
|
There is no need to check for disabled interrupts. The lockdep
|
||
|
annotation below already check if the lock has been acquired by the
|
||
|
caller and will yell if the interrupts are not disabled.
|
||
|
|
||
|
Remove the !irqs_disabled() check.
|
||
|
|
||
|
Reported-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
|
||
|
Acked-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
|
||
|
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
|
||
|
---
|
||
|
drivers/gpu/drm/i915/i915_request.c | 2 --
|
||
|
1 file changed, 2 deletions(-)
|
||
|
|
||
|
--- a/drivers/gpu/drm/i915/i915_request.c
|
||
|
+++ b/drivers/gpu/drm/i915/i915_request.c
|
||
|
@@ -608,7 +608,6 @@ bool __i915_request_submit(struct i915_r
|
||
|
|
||
|
RQ_TRACE(request, "\n");
|
||
|
|
||
|
- GEM_BUG_ON(!irqs_disabled());
|
||
|
lockdep_assert_held(&engine->sched_engine->lock);
|
||
|
|
||
|
/*
|
||
|
@@ -717,7 +716,6 @@ void __i915_request_unsubmit(struct i915
|
||
|
*/
|
||
|
RQ_TRACE(request, "\n");
|
||
|
|
||
|
- GEM_BUG_ON(!irqs_disabled());
|
||
|
lockdep_assert_held(&engine->sched_engine->lock);
|
||
|
|
||
|
/*
|