linux/drivers/gpu/drm/i915
Chris Wilson 672c368f93 drm/i915: Keep track of request among the scheduling lists
If we keep track of when the i915_request.sched.link is on the HW
runlist, or in the priority queue we can simplify our interactions with
the request (such as during rescheduling). This also simplifies the next
patch where we introduce a new in-between list, for requests that are
ready but neither on the run list or in the queue.

v2: Update i915_sched_node.link explanation for current usage where it
is a link on both the queue and on the runlists.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200116184754.2860848-1-chris@chris-wilson.co.uk
2020-01-16 19:56:15 +00:00
..
display drm/i915/psr: Share the computation of idle frames 2020-01-16 10:22:39 -08:00
gem drm/i915/gem: Take local vma references for the parser 2020-01-14 15:25:12 +00:00
gt drm/i915: Keep track of request among the scheduling lists 2020-01-16 19:56:15 +00:00
gvt drm/i915/gtt: split up i915_gem_gtt 2020-01-07 19:27:36 +00:00
oa drm/i915: reimplement header test feature 2020-01-02 12:24:10 +02:00
selftests drm/i915/gtt: split up i915_gem_gtt 2020-01-07 19:27:36 +00:00
.gitignore drm/i915: reimplement header test feature 2020-01-02 12:24:10 +02:00
i915_active_types.h drm/i915: Serialise i915_active_fence_set() with itself 2019-11-27 17:02:14 +00:00
i915_active.c drm/i915/gt: Drop mutex serialisation between context pin/unpin 2020-01-06 14:38:57 +00:00
i915_active.h drm/i915: Specialise i915_active.work lock classes 2019-12-02 21:57:23 +00:00
i915_buddy.c drn/i915: Break up long i915_buddy_free_list() with a cond_resched() 2019-12-30 12:10:38 +00:00
i915_buddy.h
i915_cmd_parser.c Correct function name in comment 2019-12-16 23:13:12 +00:00
i915_debugfs_params.c drm/i915/params: support bool values for int and uint params 2020-01-15 15:10:45 +02:00
i915_debugfs_params.h drm/i915/params: add i915 parameters to debugfs 2020-01-15 15:10:16 +02:00
i915_debugfs.c drm/i915/params: add i915 parameters to debugfs 2020-01-15 15:10:16 +02:00
i915_debugfs.h
i915_drv.c Merge drm/drm-next into drm-intel-next-queued 2020-01-09 17:19:12 +02:00
i915_drv.h drm/i915: Update DRIVER_DATE to 20200114 2020-01-14 13:39:38 +02:00
i915_fixed.h
i915_gem_evict.c drm/i915: Ignore most failures during evict-vm 2019-12-05 13:50:39 +00:00
i915_gem_fence_reg.c drm/i915: Early return for no-op i915_vma_pin_fence() 2020-01-09 08:53:15 +00:00
i915_gem_fence_reg.h
i915_gem_gtt.c drm/i915/gtt: split up i915_gem_gtt 2020-01-07 19:27:36 +00:00
i915_gem_gtt.h drm/i915/gtt: split up i915_gem_gtt 2020-01-07 19:27:36 +00:00
i915_gem.c drm/i915: Create dumb buffer from LMEM 2020-01-05 01:09:18 +00:00
i915_gem.h i915 features for v5.6: 2019-12-27 15:25:04 +10:00
i915_getparam.c drm/i915: Introduce DRM_I915_GEM_MMAP_OFFSET 2019-12-04 15:11:44 +00:00
i915_globals.c drm/i915: Ratelimit i915_globals_park 2019-12-18 17:38:56 +00:00
i915_globals.h
i915_gpu_error.c drm/i915: Drop request list from error state 2020-01-10 15:34:33 +00:00
i915_gpu_error.h drm/i915: Fix too few arguments to function i915_capture_error_state 2020-01-13 20:57:05 +00:00
i915_ioc32.c
i915_irq.c drm/i915: prefer 3-letter acronym for ivybridge 2019-12-28 13:38:08 -08:00
i915_irq.h
i915_memcpy.c drm/i915: Align start for memcpy_from_wc 2019-12-11 22:40:41 +00:00
i915_memcpy.h drm/i915: Align start for memcpy_from_wc 2019-12-11 22:40:41 +00:00
i915_mm.c drm/i915/gem: Extend mmap support for lmem 2020-01-04 17:57:46 +00:00
i915_params.c drm/i915/params: add i915 parameters to debugfs 2020-01-15 15:10:16 +02:00
i915_params.h drm/i915/params: add i915 parameters to debugfs 2020-01-15 15:10:16 +02:00
i915_pci.c drm/i915: simplify prefixes on device_info 2019-12-28 13:37:56 -08:00
i915_perf_types.h drm/i915/perf: Register sysctl path globally 2019-12-13 20:16:23 +00:00
i915_perf.c drm/i915: Pin the context as we work on it 2020-01-09 12:50:26 +00:00
i915_perf.h drm/i915/perf: Register sysctl path globally 2019-12-13 20:16:23 +00:00
i915_pmu.c drm/i915/pmu: Correct the rc6 offset upon enabling 2020-01-14 12:55:13 +00:00
i915_pmu.h drm/i915/pmu: Ensure monotonic rc6 2019-12-18 15:23:41 +00:00
i915_priolist_types.h
i915_pvinfo.h
i915_query.c drm/i915/query: Align flavour of engine data lookup 2019-11-25 15:08:24 +02:00
i915_query.h
i915_reg.h drm/i915: add Wa_14010594013: icl,ehl 2020-01-16 09:33:41 -08:00
i915_request.c drm/i915: Keep track of request among the scheduling lists 2020-01-16 19:56:15 +00:00
i915_request.h drm/i915: Keep track of request among the scheduling lists 2020-01-16 19:56:15 +00:00
i915_scatterlist.c
i915_scatterlist.h
i915_scheduler_types.h
i915_scheduler.c drm/i915: Keep track of request among the scheduling lists 2020-01-16 19:56:15 +00:00
i915_scheduler.h drm/i915: Use a ctor for TYPESAFE_BY_RCU i915_request 2019-11-22 10:47:38 +00:00
i915_selftest.h drm/i915/selftests: Perform some basic cycle counting of MI ops 2019-11-11 18:30:13 +00:00
i915_suspend.c
i915_suspend.h
i915_sw_fence_work.c drm/i915: Unpin vma->obj on early error 2019-12-18 10:13:03 +00:00
i915_sw_fence_work.h
i915_sw_fence.c drm/i915: Propagate errors on awaiting already signaled dma-fences 2019-12-06 19:09:46 +00:00
i915_sw_fence.h drm/i915: Check for error before calling cmpxchg() 2019-12-06 19:09:33 +00:00
i915_switcheroo.c
i915_switcheroo.h
i915_syncmap.c
i915_syncmap.h
i915_sysfs.c drm/i915: Start chopping up the GPU error capture 2020-01-10 15:34:33 +00:00
i915_sysfs.h
i915_trace_points.c
i915_trace.h drm/i915/fbc: Add fbc tracepoints 2020-01-15 17:19:59 +02:00
i915_user_extensions.c
i915_user_extensions.h
i915_utils.c drm-misc-next for v5.6: 2019-12-17 13:57:54 +01:00
i915_utils.h drm/i915: Improve i915_inject_probe_error macro 2019-12-12 12:35:17 +00:00
i915_vgpu.c
i915_vgpu.h
i915_vma_types.h drm/i915/gtt: split up i915_gem_gtt 2020-01-07 19:27:36 +00:00
i915_vma.c drm/i915/gt: Hold rpm wakeref before taking ggtt->vm.mutex 2020-01-10 20:30:40 +00:00
i915_vma.h drm/i915/gtt: split up i915_gem_gtt 2020-01-07 19:27:36 +00:00
intel_csr.c
intel_csr.h
intel_device_info.c drm/i915/tgl: Assume future platforms will inherit TGL's SFC capability 2019-12-31 09:37:35 -08:00
intel_device_info.h drm/i915: Flesh out device_info pretty printer 2019-12-09 09:58:51 +00:00
intel_gvt.c
intel_gvt.h
intel_memory_region.c drm/i915: lookup for mem_region of a mem_type 2020-01-05 01:08:09 +00:00
intel_memory_region.h drm/i915: lookup for mem_region of a mem_type 2020-01-05 01:08:09 +00:00
intel_pch.c drm/i915/pch: convert to using the drm_dbg_kms() macro. 2020-01-10 16:10:35 +02:00
intel_pch.h drm/i915: Fix detection for a CMP-V PCH 2019-11-18 16:36:03 +02:00
intel_pm.c drm/i915: add Wa_14010594013: icl,ehl 2020-01-16 09:33:41 -08:00
intel_pm.h drm/i915: Pass dev_priv to ilk_disable_lp_wm() 2019-12-04 15:37:30 +02:00
intel_region_lmem.c drm/i915/lmem: use new struct drm_device based logging macros. 2020-01-10 16:11:04 +02:00
intel_region_lmem.h drm/i915/lmem: add the fake lmem region 2019-10-31 20:41:47 +00:00
intel_runtime_pm.c
intel_runtime_pm.h
intel_sideband.c drm/i915/gen11: Add additional pcode status values 2020-01-14 13:52:52 -08:00
intel_sideband.h
intel_uncore.c drm/i915/uncore: use new struct drm_device based macros. 2020-01-10 16:12:25 +02:00
intel_uncore.h
intel_wakeref.c drm/i915/gt: Flush ongoing retires during wait_for_idle 2020-01-03 00:33:07 +00:00
intel_wakeref.h drm/i915/gt: Flush ongoing retires during wait_for_idle 2020-01-03 00:33:07 +00:00
intel_wopcm.c
intel_wopcm.h
Kconfig
Kconfig.debug Merge drm/drm-next into drm-intel-next-queued 2019-12-11 11:13:50 +02:00
Kconfig.profile drm/i915: Default to a more lenient forced preemption timeout 2019-11-27 10:12:14 +02:00
Kconfig.unstable drm/i915/lmem: add the fake lmem region 2019-10-31 20:41:47 +00:00
Makefile drm/i915/params: add i915 parameters to debugfs 2020-01-15 15:10:16 +02:00