Re: [PATCH] drm/i915/fence: Do not use TIMER_IRQSAFE

From: Sebastian Andrzej Siewior
Date: Tue Feb 26 2019 - 11:00:44 EST


On 2019-02-12 17:28:57 [+0100], To linux-kernel@xxxxxxxxxxxxxxx wrote:
> 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.

ping

> Cc: Jani Nikula <jani.nikula@xxxxxxxxxxxxxxx>
> Cc: Joonas Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx>
> Cc: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx>
> Cc: David Airlie <airlied@xxxxxxxx>
> Cc: Daniel Vetter <daniel@xxxxxxxx>
> Cc: intel-gfx@xxxxxxxxxxxxxxxxxxxxx
> Cc: dri-devel@xxxxxxxxxxxxxxxxxxxxx
> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@xxxxxxxxxxxxx>
> ---
> 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;

Sebastian