On 03/04/2020 08:36, Chris Wilson wrote:
We use timer->expires == 0 to detect if a timer had been cancelled, but
it's a valid expiration we could set. Just skip using 0 and set the
expiry for the next jiffie.

Signed-off-by: Chris Wilson <[email protected]>
---
  drivers/gpu/drm/i915/i915_utils.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/i915_utils.c 
b/drivers/gpu/drm/i915/i915_utils.c
index 029854ae65fc..9769d278e800 100644
--- a/drivers/gpu/drm/i915/i915_utils.c
+++ b/drivers/gpu/drm/i915/i915_utils.c
@@ -101,5 +101,5 @@ void set_timer_ms(struct timer_list *t, unsigned long 
timeout)
         */
        barrier();
- mod_timer(t, jiffies + timeout);
+       mod_timer(t, jiffies + timeout ?: 1);
  }


"Glitch in the matrix" type workaround for timeslicing and preemption timeout, at the moment at least. No big deal given the frequency of the event and low accuracy requirements.

But since it is a generic helper I think we need a comment pointing that out. With that:

Reviewed-by: Tvrtko Ursulin <[email protected]>

Regards,

Tvrtko
_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to