From: Jani Nikula <jani.nikula@intel.com>
To: Chris Wilson <chris@chris-wilson.co.uk>, intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 14/45] drm/i915: Make engine_mask & num_engines static
Date: Thu, 25 Apr 2019 12:30:59 +0300 [thread overview]
Message-ID: <87d0latorw.fsf@intel.com> (raw)
In-Reply-To: <20190425092004.9995-14-chris@chris-wilson.co.uk>
On Thu, 25 Apr 2019, Chris Wilson <chris@chris-wilson.co.uk> wrote:
> Having removed the urge to modify the engine_mask at runtime, we can
> promote the num_engines from a runtime calculation to a static and push
> it into the device_info tables.
\o/
Acked-by: Jani Nikula <jani.nikula@intel.com>
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> Cc: Jani Nikula <jani.nikula@intel.com>
> ---
> drivers/gpu/drm/i915/gt/intel_engine_cs.c | 3 --
> drivers/gpu/drm/i915/gt/intel_ringbuffer.c | 2 +-
> drivers/gpu/drm/i915/gt/selftest_lrc.c | 4 +-
> drivers/gpu/drm/i915/i915_pci.c | 45 +++++++++----------
> drivers/gpu/drm/i915/intel_device_info.h | 3 +-
> .../gpu/drm/i915/selftests/i915_gem_context.c | 4 +-
> drivers/gpu/drm/i915/selftests/i915_request.c | 2 +-
> 7 files changed, 27 insertions(+), 36 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> index 862cf1040f88..b2cd6c6785be 100644
> --- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> +++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c
> @@ -383,9 +383,6 @@ int intel_engines_init_mmio(struct drm_i915_private *i915)
> goto cleanup;
> }
>
> - RUNTIME_INFO(i915)->num_engines =
> - hweight32(INTEL_INFO(i915)->engine_mask);
> -
> i915_check_and_clear_faults(i915);
>
> return 0;
> diff --git a/drivers/gpu/drm/i915/gt/intel_ringbuffer.c b/drivers/gpu/drm/i915/gt/intel_ringbuffer.c
> index 7a4804c47466..2edeedb748ed 100644
> --- a/drivers/gpu/drm/i915/gt/intel_ringbuffer.c
> +++ b/drivers/gpu/drm/i915/gt/intel_ringbuffer.c
> @@ -1568,7 +1568,7 @@ static inline int mi_set_context(struct i915_request *rq, u32 flags)
> struct intel_engine_cs *engine = rq->engine;
> enum intel_engine_id id;
> const int num_engines =
> - IS_HSW_GT1(i915) ? RUNTIME_INFO(i915)->num_engines - 1 : 0;
> + IS_HSW_GT1(i915) ? INTEL_INFO(i915)->num_engines - 1 : 0;
> bool force_restore = false;
> int len;
> u32 *cs;
> diff --git a/drivers/gpu/drm/i915/gt/selftest_lrc.c b/drivers/gpu/drm/i915/gt/selftest_lrc.c
> index 84538f69185b..6f223f7facde 100644
> --- a/drivers/gpu/drm/i915/gt/selftest_lrc.c
> +++ b/drivers/gpu/drm/i915/gt/selftest_lrc.c
> @@ -1185,7 +1185,7 @@ static int smoke_crescendo(struct preempt_smoke *smoke, unsigned int flags)
>
> pr_info("Submitted %lu crescendo:%x requests across %d engines and %d contexts\n",
> count, flags,
> - RUNTIME_INFO(smoke->i915)->num_engines, smoke->ncontext);
> + INTEL_INFO(smoke->i915)->num_engines, smoke->ncontext);
> return 0;
> }
>
> @@ -1213,7 +1213,7 @@ static int smoke_random(struct preempt_smoke *smoke, unsigned int flags)
>
> pr_info("Submitted %lu random:%x requests across %d engines and %d contexts\n",
> count, flags,
> - RUNTIME_INFO(smoke->i915)->num_engines, smoke->ncontext);
> + INTEL_INFO(smoke->i915)->num_engines, smoke->ncontext);
> return 0;
> }
>
> diff --git a/drivers/gpu/drm/i915/i915_pci.c b/drivers/gpu/drm/i915/i915_pci.c
> index ffa2ee70a03d..431a4a2c20e1 100644
> --- a/drivers/gpu/drm/i915/i915_pci.c
> +++ b/drivers/gpu/drm/i915/i915_pci.c
> @@ -35,6 +35,7 @@
>
> #define PLATFORM(x) .platform = (x)
> #define GEN(x) .gen = (x), .gen_mask = BIT((x) - 1)
> +#define ENGINES(x) .engine_mask = (x), .num_engines = hweight8(x)
>
> #define I845_PIPE_OFFSETS \
> .pipe_offsets = { \
> @@ -145,6 +146,7 @@
>
> #define I830_FEATURES \
> GEN(2), \
> + ENGINES(BIT(RCS0)), \
> .is_mobile = 1, \
> .num_pipes = 2, \
> .display.has_overlay = 1, \
> @@ -154,7 +156,6 @@
> .gpu_reset_clobbers_display = true, \
> .hws_needs_physical = 1, \
> .unfenced_needs_alignment = 1, \
> - .engine_mask = BIT(RCS0), \
> .has_snoop = true, \
> .has_coherent_ggtt = false, \
> I9XX_PIPE_OFFSETS, \
> @@ -164,6 +165,7 @@
>
> #define I845_FEATURES \
> GEN(2), \
> + ENGINES(BIT(RCS0)), \
> .num_pipes = 1, \
> .display.has_overlay = 1, \
> .display.overlay_needs_physical = 1, \
> @@ -171,7 +173,6 @@
> .gpu_reset_clobbers_display = true, \
> .hws_needs_physical = 1, \
> .unfenced_needs_alignment = 1, \
> - .engine_mask = BIT(RCS0), \
> .has_snoop = true, \
> .has_coherent_ggtt = false, \
> I845_PIPE_OFFSETS, \
> @@ -202,10 +203,10 @@ static const struct intel_device_info intel_i865g_info = {
>
> #define GEN3_FEATURES \
> GEN(3), \
> + ENGINES(BIT(RCS0)), \
> .num_pipes = 2, \
> .display.has_gmch = 1, \
> .gpu_reset_clobbers_display = true, \
> - .engine_mask = BIT(RCS0), \
> .has_snoop = true, \
> .has_coherent_ggtt = true, \
> I9XX_PIPE_OFFSETS, \
> @@ -286,11 +287,11 @@ static const struct intel_device_info intel_pineview_m_info = {
>
> #define GEN4_FEATURES \
> GEN(4), \
> + ENGINES(BIT(RCS0)), \
> .num_pipes = 2, \
> .display.has_hotplug = 1, \
> .display.has_gmch = 1, \
> .gpu_reset_clobbers_display = true, \
> - .engine_mask = BIT(RCS0), \
> .has_snoop = true, \
> .has_coherent_ggtt = true, \
> I9XX_PIPE_OFFSETS, \
> @@ -320,25 +321,25 @@ static const struct intel_device_info intel_i965gm_info = {
> static const struct intel_device_info intel_g45_info = {
> GEN4_FEATURES,
> PLATFORM(INTEL_G45),
> - .engine_mask = BIT(RCS0) | BIT(VCS0),
> + ENGINES(BIT(RCS0) | BIT(VCS0)),
> .gpu_reset_clobbers_display = false,
> };
>
> static const struct intel_device_info intel_gm45_info = {
> GEN4_FEATURES,
> PLATFORM(INTEL_GM45),
> + ENGINES(BIT(RCS0) | BIT(VCS0)),
> .is_mobile = 1,
> .display.has_fbc = 1,
> .display.supports_tv = 1,
> - .engine_mask = BIT(RCS0) | BIT(VCS0),
> .gpu_reset_clobbers_display = false,
> };
>
> #define GEN5_FEATURES \
> GEN(5), \
> + ENGINES(BIT(RCS0) | BIT(VCS0)), \
> .num_pipes = 2, \
> .display.has_hotplug = 1, \
> - .engine_mask = BIT(RCS0) | BIT(VCS0), \
> .has_snoop = true, \
> .has_coherent_ggtt = true, \
> /* ilk does support rc6, but we do not implement [power] contexts */ \
> @@ -362,10 +363,10 @@ static const struct intel_device_info intel_ironlake_m_info = {
>
> #define GEN6_FEATURES \
> GEN(6), \
> + ENGINES(BIT(RCS0) | BIT(VCS0) | BIT(BCS0)), \
> .num_pipes = 2, \
> .display.has_hotplug = 1, \
> .display.has_fbc = 1, \
> - .engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0), \
> .has_coherent_ggtt = true, \
> .has_llc = 1, \
> .has_rc6 = 1, \
> @@ -410,10 +411,10 @@ static const struct intel_device_info intel_sandybridge_m_gt2_info = {
>
> #define GEN7_FEATURES \
> GEN(7), \
> + ENGINES(BIT(RCS0) | BIT(VCS0) | BIT(BCS0)), \
> .num_pipes = 3, \
> .display.has_hotplug = 1, \
> .display.has_fbc = 1, \
> - .engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0), \
> .has_coherent_ggtt = true, \
> .has_llc = 1, \
> .has_rc6 = 1, \
> @@ -468,6 +469,7 @@ static const struct intel_device_info intel_ivybridge_q_info = {
> static const struct intel_device_info intel_valleyview_info = {
> PLATFORM(INTEL_VALLEYVIEW),
> GEN(7),
> + ENGINES(BIT(RCS0) | BIT(VCS0) | BIT(BCS0)),
> .is_lp = 1,
> .num_pipes = 2,
> .has_runtime_pm = 1,
> @@ -479,7 +481,6 @@ static const struct intel_device_info intel_valleyview_info = {
> .ppgtt_size = 31,
> .has_snoop = true,
> .has_coherent_ggtt = false,
> - .engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0),
> .display_mmio_offset = VLV_DISPLAY_BASE,
> I9XX_PIPE_OFFSETS,
> I9XX_CURSOR_OFFSETS,
> @@ -489,7 +490,7 @@ static const struct intel_device_info intel_valleyview_info = {
>
> #define G75_FEATURES \
> GEN7_FEATURES, \
> - .engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0), \
> + ENGINES(BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0)), \
> .display.has_ddi = 1, \
> .has_fpga_dbg = 1, \
> .display.has_psr = 1, \
> @@ -553,18 +554,17 @@ static const struct intel_device_info intel_broadwell_rsvd_info = {
>
> static const struct intel_device_info intel_broadwell_gt3_info = {
> BDW_PLATFORM,
> + ENGINES(BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1)),
> .gt = 3,
> - .engine_mask =
> - BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1),
> };
>
> static const struct intel_device_info intel_cherryview_info = {
> PLATFORM(INTEL_CHERRYVIEW),
> GEN(8),
> + ENGINES(BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0)),
> .num_pipes = 3,
> .display.has_hotplug = 1,
> .is_lp = 1,
> - .engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0),
> .has_64bit_reloc = 1,
> .has_runtime_pm = 1,
> .has_rc6 = 1,
> @@ -616,9 +616,7 @@ static const struct intel_device_info intel_skylake_gt2_info = {
>
> #define SKL_GT3_PLUS_PLATFORM \
> SKL_PLATFORM, \
> - .engine_mask = \
> - BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1)
> -
> + ENGINES(BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1))
>
> static const struct intel_device_info intel_skylake_gt3_info = {
> SKL_GT3_PLUS_PLATFORM,
> @@ -632,9 +630,9 @@ static const struct intel_device_info intel_skylake_gt4_info = {
>
> #define GEN9_LP_FEATURES \
> GEN(9), \
> + ENGINES(BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0)), \
> .is_lp = 1, \
> .display.has_hotplug = 1, \
> - .engine_mask = BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0), \
> .num_pipes = 3, \
> .has_64bit_reloc = 1, \
> .display.has_ddi = 1, \
> @@ -689,9 +687,8 @@ static const struct intel_device_info intel_kabylake_gt2_info = {
>
> static const struct intel_device_info intel_kabylake_gt3_info = {
> KBL_PLATFORM,
> + ENGINES(BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1)),
> .gt = 3,
> - .engine_mask =
> - BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1),
> };
>
> #define CFL_PLATFORM \
> @@ -710,9 +707,8 @@ static const struct intel_device_info intel_coffeelake_gt2_info = {
>
> static const struct intel_device_info intel_coffeelake_gt3_info = {
> CFL_PLATFORM,
> + ENGINES(BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1)),
> .gt = 3,
> - .engine_mask =
> - BIT(RCS0) | BIT(VCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS1),
> };
>
> #define GEN10_FEATURES \
> @@ -754,15 +750,14 @@ static const struct intel_device_info intel_cannonlake_info = {
> static const struct intel_device_info intel_icelake_11_info = {
> GEN11_FEATURES,
> PLATFORM(INTEL_ICELAKE),
> - .engine_mask =
> - BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS0) | BIT(VCS2),
> + ENGINES(BIT(RCS0) | BIT(BCS0) | BIT(VECS0) | BIT(VCS0) | BIT(VCS2)),
> };
>
> static const struct intel_device_info intel_elkhartlake_info = {
> GEN11_FEATURES,
> PLATFORM(INTEL_ELKHARTLAKE),
> + ENGINES(BIT(RCS0) | BIT(BCS0) | BIT(VCS0)),
> .is_alpha_support = 1,
> - .engine_mask = BIT(RCS0) | BIT(BCS0) | BIT(VCS0),
> .ppgtt_size = 36,
> };
>
> diff --git a/drivers/gpu/drm/i915/intel_device_info.h b/drivers/gpu/drm/i915/intel_device_info.h
> index 5a2e17d6146b..0deda1efd37d 100644
> --- a/drivers/gpu/drm/i915/intel_device_info.h
> +++ b/drivers/gpu/drm/i915/intel_device_info.h
> @@ -149,6 +149,7 @@ struct intel_device_info {
> u8 gen;
> u8 gt; /* GT number, 0 if undefined */
> intel_engine_mask_t engine_mask; /* Engines supported by the HW */
> + u8 num_engines;
>
> enum intel_platform platform;
>
> @@ -202,8 +203,6 @@ struct intel_runtime_info {
> u8 num_sprites[I915_MAX_PIPES];
> u8 num_scalers[I915_MAX_PIPES];
>
> - u8 num_engines;
> -
> /* Slice/subslice/EU info */
> struct sseu_dev_info sseu;
>
> diff --git a/drivers/gpu/drm/i915/selftests/i915_gem_context.c b/drivers/gpu/drm/i915/selftests/i915_gem_context.c
> index b62f005e4d50..43d014472ac6 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_gem_context.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_gem_context.c
> @@ -1257,7 +1257,7 @@ static int igt_ctx_readonly(void *arg)
> }
> }
> pr_info("Submitted %lu dwords (across %u engines)\n",
> - ndwords, RUNTIME_INFO(i915)->num_engines);
> + ndwords, INTEL_INFO(i915)->num_engines);
>
> dw = 0;
> idx = 0;
> @@ -1586,7 +1586,7 @@ static int igt_vm_isolation(void *arg)
> count += this;
> }
> pr_info("Checked %lu scratch offsets across %d engines\n",
> - count, RUNTIME_INFO(i915)->num_engines);
> + count, INTEL_INFO(i915)->num_engines);
>
> out_rpm:
> intel_runtime_pm_put(i915, wakeref);
> diff --git a/drivers/gpu/drm/i915/selftests/i915_request.c b/drivers/gpu/drm/i915/selftests/i915_request.c
> index b60591531e4a..8fe9a43c99d9 100644
> --- a/drivers/gpu/drm/i915/selftests/i915_request.c
> +++ b/drivers/gpu/drm/i915/selftests/i915_request.c
> @@ -1211,7 +1211,7 @@ static int live_breadcrumbs_smoketest(void *arg)
> num_fences += atomic_long_read(&t[id].num_fences);
> }
> pr_info("Completed %lu waits for %lu fences across %d engines and %d cpus\n",
> - num_waits, num_fences, RUNTIME_INFO(i915)->num_engines, ncpus);
> + num_waits, num_fences, INTEL_INFO(i915)->num_engines, ncpus);
>
> mutex_lock(&i915->drm.struct_mutex);
> ret = igt_live_test_end(&live) ?: ret;
--
Jani Nikula, Intel Open Source Graphics Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2019-04-25 9:28 UTC|newest]
Thread overview: 74+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-25 9:19 [PATCH 01/45] drm/i915: Seal races between async GPU cancellation, retirement and signaling Chris Wilson
2019-04-25 9:19 ` [PATCH 02/45] drm/i915/gvt: Pin the per-engine GVT shadow contexts Chris Wilson
2019-04-25 9:19 ` [PATCH 03/45] drm/i915: Export intel_context_instance() Chris Wilson
2019-04-25 9:19 ` [PATCH 04/45] drm/i915/selftests: Use the real kernel context for sseu isolation tests Chris Wilson
2019-04-25 9:19 ` [PATCH 05/45] drm/i915/selftests: Pass around intel_context for sseu Chris Wilson
2019-04-25 9:19 ` [PATCH 06/45] drm/i915: Pass intel_context to intel_context_pin_lock() Chris Wilson
2019-04-25 9:19 ` [PATCH 07/45] drm/i915: Split engine setup/init into two phases Chris Wilson
2019-04-25 9:19 ` [PATCH 08/45] drm/i915: Switch back to an array of logical per-engine HW contexts Chris Wilson
2019-04-25 9:19 ` [PATCH 09/45] drm/i915: Remove intel_context.active_link Chris Wilson
2019-04-25 9:19 ` [PATCH 10/45] drm/i915: Move i915_request_alloc into selftests/ Chris Wilson
2019-04-25 9:19 ` [PATCH 11/45] drm/i915/execlists: Flush the tasklet on parking Chris Wilson
2019-04-25 9:19 ` [PATCH 12/45] drm/i915: Move the engine->destroy() vfunc onto the engine Chris Wilson
2019-04-25 11:01 ` Tvrtko Ursulin
2019-04-25 11:24 ` Chris Wilson
2019-04-25 11:29 ` [PATCH v2] " Chris Wilson
2019-04-25 11:46 ` Tvrtko Ursulin
2019-04-25 9:19 ` [PATCH 13/45] drm/i915: Convert inconsistent static engine tables into an init error Chris Wilson
2019-04-25 9:19 ` [PATCH 14/45] drm/i915: Make engine_mask & num_engines static Chris Wilson
2019-04-25 9:30 ` Jani Nikula [this message]
2019-04-25 10:20 ` Tvrtko Ursulin
2019-04-25 10:30 ` Chris Wilson
2019-04-25 10:43 ` Tvrtko Ursulin
2019-04-25 9:19 ` [PATCH 15/45] drm/i915: Restore control over ppgtt for context creation ABI Chris Wilson
2019-04-25 9:19 ` [PATCH 16/45] drm/i915: Allow a context to define its set of engines Chris Wilson
2019-04-25 9:19 ` [PATCH 17/45] drm/i915: Re-expose SINGLE_TIMELINE flags for context creation Chris Wilson
2019-04-25 9:19 ` [PATCH 18/45] drm/i915: Allow userspace to clone contexts on creation Chris Wilson
2019-04-25 9:19 ` [PATCH 19/45] drm/i915: Load balancing across a virtual engine Chris Wilson
2019-04-25 12:14 ` Tvrtko Ursulin
2019-04-25 12:23 ` Chris Wilson
2019-04-29 13:43 ` Tvrtko Ursulin
2019-04-25 9:19 ` [PATCH 20/45] drm/i915: Apply an execution_mask to the virtual_engine Chris Wilson
2019-04-29 14:12 ` Tvrtko Ursulin
2019-05-07 16:59 ` Chris Wilson
2019-05-08 8:48 ` Tvrtko Ursulin
2019-04-25 9:19 ` [PATCH 21/45] drm/i915: Extend execution fence to support a callback Chris Wilson
2019-04-25 9:19 ` [PATCH 22/45] drm/i915/execlists: Virtual engine bonding Chris Wilson
2019-04-29 15:58 ` Tvrtko Ursulin
2019-04-25 9:19 ` [PATCH 23/45] drm/i915: Allow specification of parallel execbuf Chris Wilson
2019-04-25 9:19 ` [PATCH 24/45] drm/i915: Split GEM object type definition to its own header Chris Wilson
2019-04-26 12:12 ` Jani Nikula
2019-04-29 9:36 ` Joonas Lahtinen
2019-04-29 17:52 ` Rodrigo Vivi
2019-04-25 9:19 ` [PATCH 25/45] drm/i915: Pull GEM ioctls interface to its own file Chris Wilson
2019-04-25 9:19 ` [PATCH 26/45] drm/i915: Move object->pages API to i915_gem_object.[ch] Chris Wilson
2019-04-25 9:19 ` [PATCH 27/45] drm/i915: Move shmem object setup to its own file Chris Wilson
2019-04-25 9:19 ` [PATCH 28/45] drm/i915: Move phys objects " Chris Wilson
2019-04-25 9:19 ` [PATCH 29/45] drm/i915: Move mmap and friends " Chris Wilson
2019-04-25 9:19 ` [PATCH 30/45] drm/i915: Move GEM domain management " Chris Wilson
2019-04-25 9:19 ` [PATCH 31/45] drm/i915: Move more GEM objects under gem/ Chris Wilson
2019-04-25 9:19 ` [PATCH 32/45] drm/i915: Pull scatterlist utils out of i915_gem.h Chris Wilson
2019-04-25 9:19 ` [PATCH 33/45] lockdep: Swap storage for pin_count and refereneces Chris Wilson
2019-04-25 9:19 ` [PATCH 34/45] drm/i915: Move GEM object domain management from struct_mutex to local Chris Wilson
2019-04-25 9:19 ` [PATCH 35/45] drm/i915: Move GEM object waiting to its own file Chris Wilson
2019-04-25 9:19 ` [PATCH 36/45] drm/i915: Move GEM object busy checking " Chris Wilson
2019-04-25 9:19 ` [PATCH 37/45] drm/i915: Move GEM client throttling " Chris Wilson
2019-04-25 9:19 ` [PATCH 38/45] drm/i915: Drop the deferred active reference Chris Wilson
2019-05-01 10:34 ` Matthew Auld
2019-04-25 9:19 ` [PATCH 39/45] drm/i915: Move object close under its own lock Chris Wilson
2019-04-25 9:19 ` [PATCH 40/45] drm/i915: Rename intel_context.active to .inflight Chris Wilson
2019-04-25 9:20 ` [PATCH 41/45] drm/i915: Keep contexts pinned until after the next kernel context switch Chris Wilson
2019-04-25 9:20 ` [PATCH 42/45] drm/i915: Stop retiring along engine Chris Wilson
2019-04-25 9:20 ` [PATCH 43/45] drm/i915: Replace engine->timeline with a plain list Chris Wilson
2019-04-25 9:20 ` [PATCH 44/45] drm/i915/execlists: Preempt-to-busy Chris Wilson
2019-04-25 9:20 ` [PATCH 45/45] drm/i915/execlists: Minimalistic timeslicing Chris Wilson
2019-04-25 10:35 ` [PATCH 01/45] drm/i915: Seal races between async GPU cancellation, retirement and signaling Tvrtko Ursulin
2019-04-25 10:42 ` Chris Wilson
2019-04-26 10:40 ` Tvrtko Ursulin
2019-04-25 11:22 ` ✗ Fi.CI.CHECKPATCH: warning for series starting with [01/45] " Patchwork
2019-04-25 11:39 ` ✗ Fi.CI.SPARSE: " Patchwork
2019-04-25 12:07 ` ✓ Fi.CI.BAT: success " Patchwork
2019-04-25 12:09 ` ✗ Fi.CI.CHECKPATCH: warning for series starting with [01/45] drm/i915: Seal races between async GPU cancellation, retirement and signaling (rev2) Patchwork
2019-04-25 12:25 ` ✗ Fi.CI.SPARSE: " Patchwork
2019-04-25 12:56 ` ✓ Fi.CI.BAT: success " Patchwork
2019-04-25 21:52 ` ✗ Fi.CI.IGT: failure " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87d0latorw.fsf@intel.com \
--to=jani.nikula@intel.com \
--cc=chris@chris-wilson.co.uk \
--cc=intel-gfx@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).