drm/i915: Disable irqs across GPU reset
authorChris Wilson <chris@chris-wilson.co.uk>
Tue, 4 Oct 2016 20:11:28 +0000 (21:11 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Wed, 5 Oct 2016 07:40:06 +0000 (08:40 +0100)
commit9e60ab0387817c6a9440f448aff7c8514b32d31b
tree49e73b825a6098bece43c4645650e7d9d54b1ab5
parentc87d50cc9fcc634e09d239e6d10293319eafae5f
drm/i915: Disable irqs across GPU reset

Whilst we reset the GPU, we want to prevent execlists from submitting
new work (which it does via an interrupt handler). To achieve this we
disable the irq (and drain the irq tasklet) around the reset. When we
enable it again afters, the interrupt queue should be empty and we can
reinitialise from a known state without fear of the tasklet running
concurrently.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Mika Kuoppala <mika.kuoppala@intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20161004201132.21801-4-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/i915_drv.c
drivers/gpu/drm/i915/i915_gem.c