]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
drm/i915: Drop the IRQ-off asserts
authorSebastian Andrzej Siewior <bigeasy@linutronix.de>
Thu, 26 Sep 2019 10:56:44 +0000 (12:56 +0200)
committerChris Wilson <chris@chris-wilson.co.uk>
Thu, 26 Sep 2019 17:44:35 +0000 (18:44 +0100)
The lockdep_assert_irqs_disabled() check is needless. The previous
lockdep_assert_held() check ensures that the lock is acquired and while
the lock is acquired lockdep also prints a warning if the interrupts are
not disabled if they have to be.
These IRQ-off asserts trigger on PREEMPT_RT because the locks become
sleeping locks and do not really disable interrupts.

Remove lockdep_assert_irqs_disabled().

Reported-by: Clark Williams <williams@redhat.com>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20190926105644.16703-3-bigeasy@linutronix.de
drivers/gpu/drm/i915/gt/intel_breadcrumbs.c

index 09c68dda209886c169d632b550c42b3a1bb8daf2..0c6a1b11e25941862403e1a52ebc6fdadf1c16e5 100644 (file)
@@ -120,7 +120,6 @@ __dma_fence_signal__notify(struct dma_fence *fence,
        struct dma_fence_cb *cur, *tmp;
 
        lockdep_assert_held(fence->lock);
-       lockdep_assert_irqs_disabled();
 
        list_for_each_entry_safe(cur, tmp, list, node) {
                INIT_LIST_HEAD(&cur->node);
@@ -275,7 +274,6 @@ void intel_engine_fini_breadcrumbs(struct intel_engine_cs *engine)
 bool i915_request_enable_breadcrumb(struct i915_request *rq)
 {
        lockdep_assert_held(&rq->lock);
-       lockdep_assert_irqs_disabled();
 
        if (test_bit(I915_FENCE_FLAG_ACTIVE, &rq->fence.flags)) {
                struct intel_breadcrumbs *b = &rq->engine->breadcrumbs;
@@ -325,7 +323,6 @@ void i915_request_cancel_breadcrumb(struct i915_request *rq)
        struct intel_breadcrumbs *b = &rq->engine->breadcrumbs;
 
        lockdep_assert_held(&rq->lock);
-       lockdep_assert_irqs_disabled();
 
        /*
         * We must wait for b->irq_lock so that we know the interrupt handler