The timer is initialized with TIMER_IRQSAFE flag. It does look like the
timer callback requires this flag at all. Its sole purpose is to ensure
synchronisation in the workqueue code.

Remove TIMER_IRQSAFE flag because it is not required.

Cc: Jani Nikula <jani.nik...@linux.intel.com>
Cc: Joonas Lahtinen <joonas.lahti...@linux.intel.com>
Cc: Rodrigo Vivi <rodrigo.v...@intel.com>
Cc: David Airlie <airl...@linux.ie>
Cc: Daniel Vetter <dan...@ffwll.ch>
Cc: intel-...@lists.freedesktop.org
Cc: dri-de...@lists.freedesktop.org
Signed-off-by: Sebastian Andrzej Siewior <bige...@linutronix.de>
---
 drivers/gpu/drm/i915/i915_sw_fence.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_sw_fence.c 
b/drivers/gpu/drm/i915/i915_sw_fence.c
index fc2eeab823b70..6d22d9df6a433 100644
--- a/drivers/gpu/drm/i915/i915_sw_fence.c
+++ b/drivers/gpu/drm/i915/i915_sw_fence.c
@@ -461,8 +461,7 @@ int i915_sw_fence_await_dma_fence(struct i915_sw_fence 
*fence,
                timer->dma = dma_fence_get(dma);
                init_irq_work(&timer->work, irq_i915_sw_fence_work);
 
-               timer_setup(&timer->timer,
-                           timer_i915_sw_fence_wake, TIMER_IRQSAFE);
+               timer_setup(&timer->timer, timer_i915_sw_fence_wake, 0);
                mod_timer(&timer->timer, round_jiffies_up(jiffies + timeout));
 
                func = dma_i915_sw_fence_wake_timer;
-- 
2.20.1

Reply via email to