linux_dsm_epyc7002/drivers/gpu/drm/i915/selftests
Chris Wilson 2935ed5339 drm/i915: Remove logical HW ID
With the introduction of ctx->engines[] we allow multiple logical
contexts to be used on the same engine (e.g. with virtual engines).
According to bspec, aach logical context requires a unique tag in order
for context-switching to occur correctly between them. [Simple
experiments show that it is not so easy to trick the HW into performing
a lite-restore with matching logical IDs, though my memory from early
Broadwell experiments do suggest that it should be generating
lite-restores.]

We only need to keep a unique tag for the active lifetime of the
context, and for as long as we need to identify that context. The HW
uses the tag to determine if it should use a lite-restore (why not the
LRCA?) and passes the tag back for various status identifies. The only
status we need to track is for OA, so when using perf, we assign the
specific context a unique tag.

v2: Calculate required number of tags to fill ELSP.

Fixes: 976b55f0e1 ("drm/i915: Allow a context to define its set of engines")
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=111895
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Acked-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191004134015.13204-14-chris@chris-wilson.co.uk
2019-10-04 15:39:30 +01:00
..
i915_active.c drm/i915: Drop struct_mutex from around i915_retire_requests() 2019-10-04 15:39:17 +01:00
i915_buddy.c drm/i915/selftests: cond_resched() within the longer buddy tests 2019-08-29 19:19:50 +01:00
i915_gem_evict.c drm/i915: Remove logical HW ID 2019-10-04 15:39:30 +01:00
i915_gem_gtt.c drm/i915: Drop struct_mutex from around i915_retire_requests() 2019-10-04 15:39:17 +01:00
i915_gem.c drm/i915: Pull i915_vma_pin under the vm->mutex 2019-10-04 15:39:02 +01:00
i915_live_selftests.h drm/i915: Extract GT render sleep (rc6) management 2019-09-27 13:01:57 +01:00
i915_mock_selftests.h drm/i915: buddy allocator 2019-08-10 19:47:40 +01:00
i915_random.c drm/i915/selftests: Extract random_offset() for use with a prng 2019-10-02 15:30:44 +01:00
i915_random.h drm/i915/selftests: Extract random_offset() for use with a prng 2019-10-02 15:30:44 +01:00
i915_request.c drm/i915: Drop struct_mutex from around i915_retire_requests() 2019-10-04 15:39:17 +01:00
i915_selftest.c drm/i915: Drop struct_mutex from around i915_retire_requests() 2019-10-04 15:39:17 +01:00
i915_sw_fence.c
i915_syncmap.c
i915_vma.c drm/i915: Remove logical HW ID 2019-10-04 15:39:30 +01:00
igt_atomic.h drm/i915/selftests: Split igt_atomic_reset testcase 2019-05-23 21:53:26 +01:00
igt_flush_test.c drm/i915: Move request runtime management onto gt 2019-10-04 15:39:26 +01:00
igt_flush_test.h drm/i915: Drop struct_mutex from around i915_retire_requests() 2019-10-04 15:39:17 +01:00
igt_live_test.c drm/i915: Move request runtime management onto gt 2019-10-04 15:39:26 +01:00
igt_live_test.h
igt_reset.c drm/i915/gt: Use intel_gt as the primary object for handling resets 2019-07-12 21:06:56 +01:00
igt_reset.h drm/i915/gt: Use intel_gt as the primary object for handling resets 2019-07-12 21:06:56 +01:00
igt_spinner.c drm/i915: Mark i915_request.timeline as a volatile, rcu pointer 2019-09-20 10:24:09 +01:00
igt_spinner.h drm/i915/selftests: Pass intel_context to igt_spinner 2019-07-31 09:45:27 +01:00
intel_uncore.c drm/i915/tgl: Introduce gen12 forcewake ranges 2019-09-13 20:07:36 +01:00
lib_sw_fence.c drm/i915: Propagate fence errors 2019-08-18 12:38:09 +01:00
lib_sw_fence.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 428 2019-06-05 17:37:16 +02:00
mock_drm.c
mock_drm.h
mock_gem_device.c drm/i915: Move request runtime management onto gt 2019-10-04 15:39:26 +01:00
mock_gem_device.h
mock_gtt.c drm/i915: Make i915_vma.flags atomic_t for mutex reduction 2019-09-11 13:39:42 +01:00
mock_gtt.h drm/i915: Rename i915_hw_ppgtt to i915_ppgtt 2019-06-11 11:44:32 +01:00
mock_request.c drm/i915/selftests: Pass intel_context to mock_request 2019-08-08 13:44:31 +01:00
mock_request.h drm/i915/selftests: Pass intel_context to mock_request 2019-08-08 13:44:31 +01:00
mock_uncore.c drm/i915: use vfuncs for reg_read/write_fw_domains 2019-06-20 16:34:52 +01:00
mock_uncore.h
scatterlist.c drm/i915: Pull scatterlist utils out of i915_gem.h 2019-05-28 12:45:29 +01:00