drm/i915: Generalise GPU activity tracking
authorChris Wilson <chris@chris-wilson.co.uk>
Tue, 5 Feb 2019 13:00:02 +0000 (13:00 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Tue, 5 Feb 2019 17:12:00 +0000 (17:12 +0000)
commit64d6c500a3843408559164223d69fb31e1a00e52
tree3280b27ac9f713f624ea13d8d4868eb3462d2f5f
parenta21f453c73aa3705029a3460b456ef77e0bc2215
drm/i915: Generalise GPU activity tracking

We currently track GPU memory usage inside VMA, such that we never
release memory used by the GPU until after it has finished accessing it.
However, we may want to track other resources aside from VMA, or we may
want to split a VMA into multiple independent regions and track each
separately. For this purpose, generalise our request tracking (akin to
struct reservation_object) so that we can embed it into other objects.

v2: Tweak error handling during selftest setup.

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/20190205130005.2807-2-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/Makefile
drivers/gpu/drm/i915/i915_active.c [new file with mode: 0644]
drivers/gpu/drm/i915/i915_active.h [new file with mode: 0644]
drivers/gpu/drm/i915/i915_active_types.h [new file with mode: 0644]
drivers/gpu/drm/i915/i915_gem_gtt.c
drivers/gpu/drm/i915/i915_vma.c
drivers/gpu/drm/i915/i915_vma.h
drivers/gpu/drm/i915/selftests/i915_active.c [new file with mode: 0644]
drivers/gpu/drm/i915/selftests/i915_live_selftests.h