]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915/execlists: Always clear ring_pause if we do not submit
authorChris Wilson <chris@chris-wilson.co.uk>
Mon, 24 Jun 2019 09:20:09 +0000 (10:20 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Mon, 24 Jun 2019 10:42:37 +0000 (11:42 +0100)
commit5fda829cd4f4e4487398877ff5464f889dc08ba5
tree641a60ede14b59fad74a0a8c3bb1ef540ff59417
parent714afc75b8a13c955e70f4d2e91184b4da94573e
drm/i915/execlists: Always clear ring_pause if we do not submit

In the unlikely case (thank you CI!), we may find ourselves wanting to
issue a preemption but having no runnable requests left. In this case,
we set the semaphore before computing the preemption and so must unset
it before forgetting (or else we leave the machine busywaiting until the
next request comes along and so likely hang).

v2: Replace readback with only a wmb after asserting the semaphore

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190624092009.30189-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/gt/intel_lrc.c