drm/i915: Hold a reference to the active HW context
authorChris Wilson <chris@chris-wilson.co.uk>
Mon, 18 Mar 2019 21:23:47 +0000 (21:23 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Tue, 19 Mar 2019 08:21:13 +0000 (08:21 +0000)
commit4c5896dc4c671cc46035c40b2d80bf4f4ed1598e
treee4ad6b6fbcaa07ca80c961fcf1e43fae65fcec17
parent206c2f812fee530f7eda8ad0e97126aec3cd7c43
drm/i915: Hold a reference to the active HW context

For virtual engines, we need to keep the HW context alive while it
remains in use. For regular HW contexts, they are created and kept alive
until the end of the GEM context. For simplicity, generalise the
requirements and keep an active reference to each HW context.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190318212347.30146-2-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/i915_gem_context.c
drivers/gpu/drm/i915/intel_context.c
drivers/gpu/drm/i915/intel_context.h
drivers/gpu/drm/i915/intel_context_types.h
drivers/gpu/drm/i915/intel_lrc.c
drivers/gpu/drm/i915/intel_ringbuffer.c
drivers/gpu/drm/i915/selftests/mock_engine.c