linux_dsm_epyc7002/drivers/gpu/drm/i915/gt
Chris Wilson 9452302436 drm/i915/gt: Report the currently active execlists request
Since commit 22b7a426bb ("drm/i915/execlists: Preempt-to-busy"), we
prune the engine->active.requests list prior to preemption, thus
removing the trace of the currently executing request. If that request
hangs rather than be preempted, we conclude that no active request was
on the GPU. Fortunately, this only impacts our debugging, and not our
means of hang detection or recovery.

v2: Use from to check the current iterator before continuing, and report
active as NULL if the current request is already completed.

References: 22b7a426bb ("drm/i915/execlists: Preempt-to-busy")
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/20200117113259.3023890-1-chris@chris-wilson.co.uk
2020-01-17 16:09:42 +00:00
..
selftests drm/i915: Serialise i915_active_fence_set() with itself 2019-11-27 17:02:14 +00:00
uc drm/i915/guc: Introduce CT_DEBUG 2020-01-17 14:02:05 +00:00
debugfs_engines.c drm/i915/gt: Move pm debug files into a gt aware debugfs 2019-12-22 15:25:10 +00:00
debugfs_engines.h drm/i915/gt: Move pm debug files into a gt aware debugfs 2019-12-22 15:25:10 +00:00
debugfs_gt_pm.c drm/i915/gt: Move pm debug files into a gt aware debugfs 2019-12-22 15:25:10 +00:00
debugfs_gt_pm.h drm/i915/gt: Move pm debug files into a gt aware debugfs 2019-12-22 15:25:10 +00:00
debugfs_gt.c drm/i915/gt: Move pm debug files into a gt aware debugfs 2019-12-22 15:25:10 +00:00
debugfs_gt.h drm/i915/gt: Move pm debug files into a gt aware debugfs 2019-12-22 15:25:10 +00:00
gen6_ppgtt.c drm/i915/gtt: split up i915_gem_gtt 2020-01-07 19:27:36 +00:00
gen6_ppgtt.h drm/i915/gtt: split up i915_gem_gtt 2020-01-07 19:27:36 +00:00
gen6_renderstate.c
gen7_renderstate.c
gen8_ppgtt.c drm/i915/gtt: split up i915_gem_gtt 2020-01-07 19:27:36 +00:00
gen8_ppgtt.h drm/i915/gtt: split up i915_gem_gtt 2020-01-07 19:27:36 +00:00
gen8_renderstate.c
gen9_renderstate.c
intel_breadcrumbs.c drm/i915: Drop GEM context as a direct link from i915_request 2019-12-20 10:52:21 +00:00
intel_context_types.h drm/i915/gt: Always poison the kernel_context image before unparking 2020-01-03 11:26:01 +00:00
intel_context.c drm/i915/gt: Mark ring->vma as active while pinned 2020-01-10 14:48:35 +00:00
intel_context.h drm/i915/gt: Pull context activation into central intel_context_pin() 2020-01-09 13:48:00 +00:00
intel_engine_cs.c drm/i915/gt: Report the currently active execlists request 2020-01-17 16:09:42 +00:00
intel_engine_heartbeat.c drm/i915: Merge i915_request.flags with i915_request.fence.flags 2020-01-06 14:38:55 +00:00
intel_engine_heartbeat.h
intel_engine_pm.c drm/i915/gt: Always poison the kernel_context image before unparking 2020-01-03 11:26:01 +00:00
intel_engine_pm.h drm/i915: Mark up the calling context for intel_wakeref_put() 2019-11-25 15:29:17 +02:00
intel_engine_pool_types.h
intel_engine_pool.c drm main pull for 5.5-rc1 2019-11-27 17:45:48 -08:00
intel_engine_pool.h
intel_engine_types.h drm/i915/gt: Allow temporary suspension of inflight requests 2020-01-16 19:56:16 +00:00
intel_engine_user.c drm/i915/gt: Ignore incomplete engines after init failure 2019-12-26 19:51:42 +00:00
intel_engine_user.h
intel_engine.h drm/i915: Start chopping up the GPU error capture 2020-01-10 15:34:33 +00:00
intel_ggtt.c drm/i915/gt: Hold rpm wakeref before taking ggtt->vm.mutex 2020-01-10 20:30:40 +00:00
intel_gpu_commands.h drm/i915/gem: Prepare gen7 cmdparser for async execution 2019-12-12 10:42:57 +00:00
intel_gt_irq.c drm/i915/gt: Remove direct invocation of breadcrumb signaling 2019-12-18 17:11:28 +00:00
intel_gt_irq.h
intel_gt_pm_irq.c
intel_gt_pm_irq.h
intel_gt_pm.c drm/i915/gt: Discard stale context state from across idling 2020-01-03 11:26:01 +00:00
intel_gt_pm.h drm/i915/gt: Apply sanitiization just before resume 2019-12-26 12:37:30 +00:00
intel_gt_requests.c drm/i915/gt: Flush ongoing retires during wait_for_idle 2020-01-03 00:33:07 +00:00
intel_gt_requests.h drm/i915/gt: Schedule request retirement when timeline idles 2019-11-25 16:39:07 +02:00
intel_gt_types.h drm/i915: Remove i915->kernel_context 2019-12-21 16:37:10 +00:00
intel_gt.c drm/i915/gtt: split up i915_gem_gtt 2020-01-07 19:27:36 +00:00
intel_gt.h drm/i915/gt: Drop rogue space in the middle of GT_TRACE 2020-01-16 15:41:34 +00:00
intel_gtt.c drm/i915/gtt: split up i915_gem_gtt 2020-01-07 19:27:36 +00:00
intel_gtt.h drm/i915: Start chopping up the GPU error capture 2020-01-10 15:34:33 +00:00
intel_llc_types.h
intel_llc.c
intel_llc.h
intel_lrc_reg.h
intel_lrc.c drm/i915/execlists: Offline error capture 2020-01-16 19:56:17 +00:00
intel_lrc.h drm/i915/gt: Merge engine init/setup loops 2019-12-22 15:18:05 +00:00
intel_mocs.c drm/i915: prefer 3-letter acronym for tigerlake 2019-12-28 13:38:09 -08:00
intel_mocs.h
intel_ppgtt.c drm/i915/gtt: split up i915_gem_gtt 2020-01-07 19:27:36 +00:00
intel_rc6_types.h drm/i915/gt: Only ignore rc6 parking for PCU on byt/bsw 2019-12-12 08:35:48 +00:00
intel_rc6.c drm/i915/gt: Clear rc6 residency trackers across suspend 2020-01-14 12:55:13 +00:00
intel_rc6.h drm/i915/gt: Simplify rc6 w/a application 2019-12-02 21:57:22 +00:00
intel_renderstate.c drm/i915: Lift i915_vma_pin() out of intel_renderstate_emit() 2019-12-03 13:23:00 +00:00
intel_renderstate.h drm/i915: Lift i915_vma_pin() out of intel_renderstate_emit() 2019-12-03 13:23:00 +00:00
intel_reset_types.h
intel_reset.c drm/i915: Start chopping up the GPU error capture 2020-01-10 15:34:33 +00:00
intel_reset.h
intel_ring_submission.c drm/i915/gt: Pull context activation into central intel_context_pin() 2020-01-09 13:48:00 +00:00
intel_ring_types.h
intel_ring.c drm/i915/gt: Make intel_ring_unpin() safe for concurrent pint 2019-11-26 09:50:25 +02:00
intel_ring.h
intel_rps_types.h
intel_rps.c drm/i915: Merge i915_request.flags with i915_request.fence.flags 2020-01-06 14:38:55 +00:00
intel_rps.h drm/i915/rps: Add frequency translation helpers 2019-12-13 22:22:05 +00:00
intel_sseu.c
intel_sseu.h
intel_timeline_types.h drm/i915/gt: Pull GT initialisation under intel_gt_init() 2019-12-22 12:51:32 +00:00
intel_timeline.c drm/i915/gt: Drop a defunct timeline assertion 2020-01-09 08:33:23 +00:00
intel_timeline.h
intel_workarounds_types.h
intel_workarounds.c drm/i915: prefer 3-letter acronym for broadwell 2019-12-28 13:38:06 -08:00
intel_workarounds.h
mock_engine.c drm/i915/selftests: Add a mock i915_vma to the mock_ring 2020-01-14 18:17:01 +00:00
mock_engine.h
selftest_context.c drm/i915: Remove i915->kernel_context 2019-12-21 16:37:10 +00:00
selftest_engine_cs.c drm/i915/selftests: fix uninitialized variable sum when summing up values 2019-12-10 14:35:24 +00:00
selftest_engine_heartbeat.c drm/i915: Remove i915->kernel_context 2019-12-21 16:37:10 +00:00
selftest_engine_pm.c drm/i915: Mark up the calling context for intel_wakeref_put() 2019-11-25 15:29:17 +02:00
selftest_engine.c
selftest_engine.h
selftest_gt_pm.c drm/i915/gt: Manual rc6 entry upon parking 2019-11-27 12:53:27 +00:00
selftest_hangcheck.c drm/i915: Start chopping up the GPU error capture 2020-01-10 15:34:33 +00:00
selftest_llc.c
selftest_llc.h
selftest_lrc.c drm/i915/gt: Allow temporary suspension of inflight requests 2020-01-16 19:56:16 +00:00
selftest_mocs.c drm/i915: Remove i915->kernel_context 2019-12-21 16:37:10 +00:00
selftest_rc6.c drm/i915: Remove i915->kernel_context 2019-12-21 16:37:10 +00:00
selftest_rc6.h drm/i915/gt: Manual rc6 entry upon parking 2019-11-27 12:53:27 +00:00
selftest_reset.c
selftest_timeline.c drm/i915: Serialise with engine-pm around requests on the kernel_context 2019-11-25 13:17:18 +00:00
selftest_workarounds.c drm/i915: Remove i915->kernel_context 2019-12-21 16:37:10 +00:00