* [Intel-gfx] [PATCH 0/1] Engine relative MMIO
@ 2021-05-26 19:11 Matthew Brost
2021-05-26 19:11 ` [Intel-gfx] [PATCH 1/1] drm/i915: " Matthew Brost
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Matthew Brost @ 2021-05-26 19:11 UTC (permalink / raw)
To: intel-gfx, dri-devel
As discussed in [1] we are breaking that large series into a several
smaller ones. This series is stand alone patch part of step #4 which has
no other dependencies or patches relevant to it.
Taking ownership of the patch in this series from John Harrison per his
request.
Trybot CI [2] looks good, let's try to get this reviewed a merged
quickly.
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
[1] https://patchwork.freedesktop.org/series/89844/
[2] https://patchwork.freedesktop.org/series/90573/
Matthew Brost (1):
drm/i915: Engine relative MMIO
drivers/gpu/drm/i915/gem/i915_gem_context.c | 7 ++++---
drivers/gpu/drm/i915/gt/intel_engine_cs.c | 22 ++++++++++++++++++++
drivers/gpu/drm/i915/gt/intel_engine_types.h | 3 +++
drivers/gpu/drm/i915/gt/intel_gpu_commands.h | 6 ++++++
drivers/gpu/drm/i915/gt/intel_lrc.c | 4 +---
5 files changed, 36 insertions(+), 6 deletions(-)
--
2.28.0
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 7+ messages in thread* [Intel-gfx] [PATCH 1/1] drm/i915: Engine relative MMIO 2021-05-26 19:11 [Intel-gfx] [PATCH 0/1] Engine relative MMIO Matthew Brost @ 2021-05-26 19:11 ` Matthew Brost 2021-05-27 1:34 ` Daniele Ceraolo Spurio 2021-05-27 0:34 ` [Intel-gfx] ✓ Fi.CI.BAT: success for " Patchwork 2021-05-27 14:05 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork 2 siblings, 1 reply; 7+ messages in thread From: Matthew Brost @ 2021-05-26 19:11 UTC (permalink / raw) To: intel-gfx, dri-devel With virtual engines, it is no longer possible to know which specific physical engine a given request will be executed on at the time that request is generated. This means that the request itself must be engine agnostic - any direct register writes must be relative to the engine and not absolute addresses. The LRI command has support for engine relative addressing. However, the mechanism is not transparent to the driver. The scheme for Gen11 (MI_LRI_ADD_CS_MMIO_START) requires the LRI address to have no absolute engine base component in the ring and BBs. The hardware then adds on the correct engine offset at execution time. This differs slightly for LRC where the upper bits of the base component are just ignored. Due to the non-trivial and differing schemes on different hardware, it is not possible to simply update the code that creates the LRI commands to set a remap flag and let the hardware get on with it. Instead, this patch adds function wrappers for generating the LRI command itself and then for constructing the correct address to use with the LRI. Bspec: 45606 Signed-off-by: John Harrison <John.C.Harrison@Intel.com> Signed-off-by: Matthew Brost <matthew.brost@intel.com> CC: Rodrigo Vivi <rodrigo.vivi@intel.com> CC: Tvrtko Ursulin <tvrtko.ursulin@intel.com> CC: Chris P Wilson <chris.p.wilson@intel.com> CC: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> --- drivers/gpu/drm/i915/gem/i915_gem_context.c | 7 ++++--- drivers/gpu/drm/i915/gt/intel_engine_cs.c | 22 ++++++++++++++++++++ drivers/gpu/drm/i915/gt/intel_engine_types.h | 3 +++ drivers/gpu/drm/i915/gt/intel_gpu_commands.h | 6 ++++++ drivers/gpu/drm/i915/gt/intel_lrc.c | 4 +--- 5 files changed, 36 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/i915/gem/i915_gem_context.c b/drivers/gpu/drm/i915/gem/i915_gem_context.c index 188dee13e017..a8a195bfcb57 100644 --- a/drivers/gpu/drm/i915/gem/i915_gem_context.c +++ b/drivers/gpu/drm/i915/gem/i915_gem_context.c @@ -1211,7 +1211,7 @@ static int emit_ppgtt_update(struct i915_request *rq, void *data) { struct i915_address_space *vm = rq->context->vm; struct intel_engine_cs *engine = rq->engine; - u32 base = engine->mmio_base; + u32 base = engine->lri_mmio_base; u32 *cs; int i; @@ -1223,7 +1223,7 @@ static int emit_ppgtt_update(struct i915_request *rq, void *data) if (IS_ERR(cs)) return PTR_ERR(cs); - *cs++ = MI_LOAD_REGISTER_IMM(2); + *cs++ = MI_LOAD_REGISTER_IMM_REL(engine, 2); *cs++ = i915_mmio_reg_offset(GEN8_RING_PDP_UDW(base, 0)); *cs++ = upper_32_bits(pd_daddr); @@ -1245,7 +1245,8 @@ static int emit_ppgtt_update(struct i915_request *rq, void *data) if (IS_ERR(cs)) return PTR_ERR(cs); - *cs++ = MI_LOAD_REGISTER_IMM(2 * GEN8_3LVL_PDPES) | MI_LRI_FORCE_POSTED; + *cs++ = MI_LOAD_REGISTER_IMM_REL(engine, 2 * GEN8_3LVL_PDPES) | + MI_LRI_FORCE_POSTED; for (i = GEN8_3LVL_PDPES; i--; ) { const dma_addr_t pd_daddr = i915_page_dir_dma_addr(ppgtt, i); diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c b/drivers/gpu/drm/i915/gt/intel_engine_cs.c index 3f9a811eb02b..0de6bc533776 100644 --- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c +++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c @@ -15,6 +15,7 @@ #include "intel_engine_pm.h" #include "intel_engine_user.h" #include "intel_execlists_submission.h" +#include "intel_gpu_commands.h" #include "intel_gt.h" #include "intel_gt_requests.h" #include "intel_gt_pm.h" @@ -222,6 +223,25 @@ static u32 __engine_mmio_base(struct drm_i915_private *i915, return bases[i].base; } +static bool i915_engine_has_relative_lri(const struct intel_engine_cs *engine) +{ + if (INTEL_GEN(engine->i915) < 11) + return false; + + return true; +} + +static void lri_init(struct intel_engine_cs *engine) +{ + if (i915_engine_has_relative_lri(engine)) { + engine->lri_cmd_mode = MI_LRI_LRM_CS_MMIO; + engine->lri_mmio_base = 0; + } else { + engine->lri_cmd_mode = 0; + engine->lri_mmio_base = engine->mmio_base; + } +} + static void __sprint_engine_name(struct intel_engine_cs *engine) { /* @@ -329,6 +349,8 @@ static int intel_engine_setup(struct intel_gt *gt, enum intel_engine_id id) /* Nothing to do here, execute in order of dependencies */ engine->schedule = NULL; + lri_init(engine); + ewma__engine_latency_init(&engine->latency); seqcount_init(&engine->stats.lock); diff --git a/drivers/gpu/drm/i915/gt/intel_engine_types.h b/drivers/gpu/drm/i915/gt/intel_engine_types.h index 9ef349cd5cea..e48da23c9b0f 100644 --- a/drivers/gpu/drm/i915/gt/intel_engine_types.h +++ b/drivers/gpu/drm/i915/gt/intel_engine_types.h @@ -310,6 +310,9 @@ struct intel_engine_cs { u32 context_size; u32 mmio_base; + u32 lri_mmio_base; + u32 lri_cmd_mode; + /* * Some w/a require forcewake to be held (which prevents RC6) while * a particular engine is active. If so, we set fw_domain to which diff --git a/drivers/gpu/drm/i915/gt/intel_gpu_commands.h b/drivers/gpu/drm/i915/gt/intel_gpu_commands.h index 2694dbb9967e..f0f101134fd8 100644 --- a/drivers/gpu/drm/i915/gt/intel_gpu_commands.h +++ b/drivers/gpu/drm/i915/gt/intel_gpu_commands.h @@ -134,8 +134,14 @@ * simply ignores the register load under certain conditions. * - One can actually load arbitrary many arbitrary registers: Simply issue x * address/value pairs. Don't overdue it, though, x <= 2^4 must hold! + * - Newer hardware supports engine relative addressing but older hardware does + * not. This is required for hw engine load balancing. The + * MI_LOAD_REGISTER_IMM_REL macro can be used on both newer and older + * hardware. */ #define MI_LOAD_REGISTER_IMM(x) MI_INSTR(0x22, 2*(x)-1) +#define MI_LOAD_REGISTER_IMM_REL(egine, x) \ + (MI_LOAD_REGISTER_IMM(x) | engine->lri_cmd_mode) /* Gen11+. addr = base + (ctx_restore ? offset & GENMASK(12,2) : offset) */ #define MI_LRI_LRM_CS_MMIO REG_BIT(19) #define MI_LRI_FORCE_POSTED (1<<12) diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c index aafe2a4df496..390628666564 100644 --- a/drivers/gpu/drm/i915/gt/intel_lrc.c +++ b/drivers/gpu/drm/i915/gt/intel_lrc.c @@ -44,11 +44,9 @@ static void set_offsets(u32 *regs, flags = *data >> 6; data++; - *regs = MI_LOAD_REGISTER_IMM(count); + *regs = MI_LOAD_REGISTER_IMM_REL(engine, count); if (flags & POSTED) *regs |= MI_LRI_FORCE_POSTED; - if (INTEL_GEN(engine->i915) >= 11) - *regs |= MI_LRI_LRM_CS_MMIO; regs++; GEM_BUG_ON(!count); -- 2.28.0 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [Intel-gfx] [PATCH 1/1] drm/i915: Engine relative MMIO 2021-05-26 19:11 ` [Intel-gfx] [PATCH 1/1] drm/i915: " Matthew Brost @ 2021-05-27 1:34 ` Daniele Ceraolo Spurio 2021-05-27 2:43 ` Matthew Brost 0 siblings, 1 reply; 7+ messages in thread From: Daniele Ceraolo Spurio @ 2021-05-27 1:34 UTC (permalink / raw) To: Matthew Brost, intel-gfx, dri-devel On 5/26/2021 12:11 PM, Matthew Brost wrote: > With virtual engines, it is no longer possible to know which specific > physical engine a given request will be executed on at the time that > request is generated. This means that the request itself must be engine > agnostic - any direct register writes must be relative to the engine > and not absolute addresses. > > The LRI command has support for engine relative addressing. However, > the mechanism is not transparent to the driver. The scheme for Gen11 > (MI_LRI_ADD_CS_MMIO_START) requires the LRI address to have no > absolute engine base component in the ring and BBs. The hardware then > adds on the correct engine offset at execution time. This differs > slightly for LRC where the upper bits of the base component are just > ignored. > > Due to the non-trivial and differing schemes on different hardware, it > is not possible to simply update the code that creates the LRI > commands to set a remap flag and let the hardware get on with it. > Instead, this patch adds function wrappers for generating the LRI > command itself and then for constructing the correct address to use > with the LRI. > > Bspec: 45606 > Signed-off-by: John Harrison <John.C.Harrison@Intel.com> > Signed-off-by: Matthew Brost <matthew.brost@intel.com> > CC: Rodrigo Vivi <rodrigo.vivi@intel.com> > CC: Tvrtko Ursulin <tvrtko.ursulin@intel.com> > CC: Chris P Wilson <chris.p.wilson@intel.com> > CC: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> > --- > drivers/gpu/drm/i915/gem/i915_gem_context.c | 7 ++++--- > drivers/gpu/drm/i915/gt/intel_engine_cs.c | 22 ++++++++++++++++++++ > drivers/gpu/drm/i915/gt/intel_engine_types.h | 3 +++ > drivers/gpu/drm/i915/gt/intel_gpu_commands.h | 6 ++++++ > drivers/gpu/drm/i915/gt/intel_lrc.c | 4 +--- > 5 files changed, 36 insertions(+), 6 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gem/i915_gem_context.c b/drivers/gpu/drm/i915/gem/i915_gem_context.c > index 188dee13e017..a8a195bfcb57 100644 > --- a/drivers/gpu/drm/i915/gem/i915_gem_context.c > +++ b/drivers/gpu/drm/i915/gem/i915_gem_context.c > @@ -1211,7 +1211,7 @@ static int emit_ppgtt_update(struct i915_request *rq, void *data) > { > struct i915_address_space *vm = rq->context->vm; > struct intel_engine_cs *engine = rq->engine; > - u32 base = engine->mmio_base; > + u32 base = engine->lri_mmio_base; > u32 *cs; > int i; > > @@ -1223,7 +1223,7 @@ static int emit_ppgtt_update(struct i915_request *rq, void *data) > if (IS_ERR(cs)) > return PTR_ERR(cs); > > - *cs++ = MI_LOAD_REGISTER_IMM(2); > + *cs++ = MI_LOAD_REGISTER_IMM_REL(engine, 2); This is the only place where you changed the behavior and I think it is going away (https://lists.freedesktop.org/archives/dri-devel/2021-May/305328.html), so the new macro is potentially not needed. > > *cs++ = i915_mmio_reg_offset(GEN8_RING_PDP_UDW(base, 0)); > *cs++ = upper_32_bits(pd_daddr); > @@ -1245,7 +1245,8 @@ static int emit_ppgtt_update(struct i915_request *rq, void *data) > if (IS_ERR(cs)) > return PTR_ERR(cs); > > - *cs++ = MI_LOAD_REGISTER_IMM(2 * GEN8_3LVL_PDPES) | MI_LRI_FORCE_POSTED; > + *cs++ = MI_LOAD_REGISTER_IMM_REL(engine, 2 * GEN8_3LVL_PDPES) | > + MI_LRI_FORCE_POSTED; > for (i = GEN8_3LVL_PDPES; i--; ) { > const dma_addr_t pd_daddr = i915_page_dir_dma_addr(ppgtt, i); > > diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c b/drivers/gpu/drm/i915/gt/intel_engine_cs.c > index 3f9a811eb02b..0de6bc533776 100644 > --- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c > +++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c > @@ -15,6 +15,7 @@ > #include "intel_engine_pm.h" > #include "intel_engine_user.h" > #include "intel_execlists_submission.h" > +#include "intel_gpu_commands.h" > #include "intel_gt.h" > #include "intel_gt_requests.h" > #include "intel_gt_pm.h" > @@ -222,6 +223,25 @@ static u32 __engine_mmio_base(struct drm_i915_private *i915, > return bases[i].base; > } > > +static bool i915_engine_has_relative_lri(const struct intel_engine_cs *engine) > +{ > + if (INTEL_GEN(engine->i915) < 11) > + return false; > + > + return true; We already have intel_engine_has_relative_mmio(), can just re-use that. Note that I915_ENGINE_HAS_RELATIVE_MMIO is only set for gen12+ at the moment; this was because CI failed on ICL and since we urgently needed the change for gen12 we just excluded gen11 and pushed (see Mika's comment @ https://lists.freedesktop.org/archives/intel-gfx/2019-September/211812.html). It should be ok to extend that to gen11 if we get a green CI. > +} > + > +static void lri_init(struct intel_engine_cs *engine) > +{ > + if (i915_engine_has_relative_lri(engine)) { > + engine->lri_cmd_mode = MI_LRI_LRM_CS_MMIO; > + engine->lri_mmio_base = 0; > + } else { > + engine->lri_cmd_mode = 0; > + engine->lri_mmio_base = engine->mmio_base; > + } > +} > + > static void __sprint_engine_name(struct intel_engine_cs *engine) > { > /* > @@ -329,6 +349,8 @@ static int intel_engine_setup(struct intel_gt *gt, enum intel_engine_id id) > /* Nothing to do here, execute in order of dependencies */ > engine->schedule = NULL; > > + lri_init(engine); > + > ewma__engine_latency_init(&engine->latency); > seqcount_init(&engine->stats.lock); > > diff --git a/drivers/gpu/drm/i915/gt/intel_engine_types.h b/drivers/gpu/drm/i915/gt/intel_engine_types.h > index 9ef349cd5cea..e48da23c9b0f 100644 > --- a/drivers/gpu/drm/i915/gt/intel_engine_types.h > +++ b/drivers/gpu/drm/i915/gt/intel_engine_types.h > @@ -310,6 +310,9 @@ struct intel_engine_cs { > u32 context_size; > u32 mmio_base; > > + u32 lri_mmio_base; > + u32 lri_cmd_mode; > + > /* > * Some w/a require forcewake to be held (which prevents RC6) while > * a particular engine is active. If so, we set fw_domain to which > diff --git a/drivers/gpu/drm/i915/gt/intel_gpu_commands.h b/drivers/gpu/drm/i915/gt/intel_gpu_commands.h > index 2694dbb9967e..f0f101134fd8 100644 > --- a/drivers/gpu/drm/i915/gt/intel_gpu_commands.h > +++ b/drivers/gpu/drm/i915/gt/intel_gpu_commands.h > @@ -134,8 +134,14 @@ > * simply ignores the register load under certain conditions. > * - One can actually load arbitrary many arbitrary registers: Simply issue x > * address/value pairs. Don't overdue it, though, x <= 2^4 must hold! > + * - Newer hardware supports engine relative addressing but older hardware does > + * not. This is required for hw engine load balancing. The > + * MI_LOAD_REGISTER_IMM_REL macro can be used on both newer and older > + * hardware. > */ > #define MI_LOAD_REGISTER_IMM(x) MI_INSTR(0x22, 2*(x)-1) > +#define MI_LOAD_REGISTER_IMM_REL(egine, x) \ > + (MI_LOAD_REGISTER_IMM(x) | engine->lri_cmd_mode) This naming is a bit confusing, because MI_LOAD_REGISTER_IMM_REL is not actually always relative so we also need to be careful of how we provide the register values (i.e. with or without the mmio base). Also a bit worrying for future proofing, since we'd need to make sure that any new CS register access goes explicitly relative. Just my 2 cents, I know there was contention on this patch in the past so I'm not going to jump in on the fight :) I have not checked if any of the other numerous instances of MI_LOAD_REGISTER_IMM would benefit from going relative. I assume none is strictly required, since otherwise virtual engines wouldn't work. Daniele > /* Gen11+. addr = base + (ctx_restore ? offset & GENMASK(12,2) : offset) */ > #define MI_LRI_LRM_CS_MMIO REG_BIT(19) > #define MI_LRI_FORCE_POSTED (1<<12) > diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c > index aafe2a4df496..390628666564 100644 > --- a/drivers/gpu/drm/i915/gt/intel_lrc.c > +++ b/drivers/gpu/drm/i915/gt/intel_lrc.c > @@ -44,11 +44,9 @@ static void set_offsets(u32 *regs, > flags = *data >> 6; > data++; > > - *regs = MI_LOAD_REGISTER_IMM(count); > + *regs = MI_LOAD_REGISTER_IMM_REL(engine, count); > if (flags & POSTED) > *regs |= MI_LRI_FORCE_POSTED; > - if (INTEL_GEN(engine->i915) >= 11) > - *regs |= MI_LRI_LRM_CS_MMIO; > regs++; > > GEM_BUG_ON(!count); _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Intel-gfx] [PATCH 1/1] drm/i915: Engine relative MMIO 2021-05-27 1:34 ` Daniele Ceraolo Spurio @ 2021-05-27 2:43 ` Matthew Brost 2021-05-27 2:59 ` Matthew Brost 0 siblings, 1 reply; 7+ messages in thread From: Matthew Brost @ 2021-05-27 2:43 UTC (permalink / raw) To: Daniele Ceraolo Spurio; +Cc: intel-gfx, dri-devel On Wed, May 26, 2021 at 06:34:44PM -0700, Daniele Ceraolo Spurio wrote: > > > On 5/26/2021 12:11 PM, Matthew Brost wrote: > > With virtual engines, it is no longer possible to know which specific > > physical engine a given request will be executed on at the time that > > request is generated. This means that the request itself must be engine > > agnostic - any direct register writes must be relative to the engine > > and not absolute addresses. > > > > The LRI command has support for engine relative addressing. However, > > the mechanism is not transparent to the driver. The scheme for Gen11 > > (MI_LRI_ADD_CS_MMIO_START) requires the LRI address to have no > > absolute engine base component in the ring and BBs. The hardware then > > adds on the correct engine offset at execution time. This differs > > slightly for LRC where the upper bits of the base component are just > > ignored. > > > > Due to the non-trivial and differing schemes on different hardware, it > > is not possible to simply update the code that creates the LRI > > commands to set a remap flag and let the hardware get on with it. > > Instead, this patch adds function wrappers for generating the LRI > > command itself and then for constructing the correct address to use > > with the LRI. > > > > Bspec: 45606 > > Signed-off-by: John Harrison <John.C.Harrison@Intel.com> > > Signed-off-by: Matthew Brost <matthew.brost@intel.com> > > CC: Rodrigo Vivi <rodrigo.vivi@intel.com> > > CC: Tvrtko Ursulin <tvrtko.ursulin@intel.com> > > CC: Chris P Wilson <chris.p.wilson@intel.com> > > CC: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> > > --- > > drivers/gpu/drm/i915/gem/i915_gem_context.c | 7 ++++--- > > drivers/gpu/drm/i915/gt/intel_engine_cs.c | 22 ++++++++++++++++++++ > > drivers/gpu/drm/i915/gt/intel_engine_types.h | 3 +++ > > drivers/gpu/drm/i915/gt/intel_gpu_commands.h | 6 ++++++ > > drivers/gpu/drm/i915/gt/intel_lrc.c | 4 +--- > > 5 files changed, 36 insertions(+), 6 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/gem/i915_gem_context.c b/drivers/gpu/drm/i915/gem/i915_gem_context.c > > index 188dee13e017..a8a195bfcb57 100644 > > --- a/drivers/gpu/drm/i915/gem/i915_gem_context.c > > +++ b/drivers/gpu/drm/i915/gem/i915_gem_context.c > > @@ -1211,7 +1211,7 @@ static int emit_ppgtt_update(struct i915_request *rq, void *data) > > { > > struct i915_address_space *vm = rq->context->vm; > > struct intel_engine_cs *engine = rq->engine; > > - u32 base = engine->mmio_base; > > + u32 base = engine->lri_mmio_base; > > u32 *cs; > > int i; > > @@ -1223,7 +1223,7 @@ static int emit_ppgtt_update(struct i915_request *rq, void *data) > > if (IS_ERR(cs)) > > return PTR_ERR(cs); > > - *cs++ = MI_LOAD_REGISTER_IMM(2); > > + *cs++ = MI_LOAD_REGISTER_IMM_REL(engine, 2); > > This is the only place where you changed the behavior and I think it is > going away > (https://lists.freedesktop.org/archives/dri-devel/2021-May/305328.html), so > the new macro is potentially not needed. > See my last comment, I think this irrelevant as I think I missed some cases where this macro should be used. > > *cs++ = i915_mmio_reg_offset(GEN8_RING_PDP_UDW(base, 0)); > > *cs++ = upper_32_bits(pd_daddr); > > @@ -1245,7 +1245,8 @@ static int emit_ppgtt_update(struct i915_request *rq, void *data) > > if (IS_ERR(cs)) > > return PTR_ERR(cs); > > - *cs++ = MI_LOAD_REGISTER_IMM(2 * GEN8_3LVL_PDPES) | MI_LRI_FORCE_POSTED; > > + *cs++ = MI_LOAD_REGISTER_IMM_REL(engine, 2 * GEN8_3LVL_PDPES) | > > + MI_LRI_FORCE_POSTED; > > for (i = GEN8_3LVL_PDPES; i--; ) { > > const dma_addr_t pd_daddr = i915_page_dir_dma_addr(ppgtt, i); > > diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c b/drivers/gpu/drm/i915/gt/intel_engine_cs.c > > index 3f9a811eb02b..0de6bc533776 100644 > > --- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c > > +++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c > > @@ -15,6 +15,7 @@ > > #include "intel_engine_pm.h" > > #include "intel_engine_user.h" > > #include "intel_execlists_submission.h" > > +#include "intel_gpu_commands.h" > > #include "intel_gt.h" > > #include "intel_gt_requests.h" > > #include "intel_gt_pm.h" > > @@ -222,6 +223,25 @@ static u32 __engine_mmio_base(struct drm_i915_private *i915, > > return bases[i].base; > > } > > +static bool i915_engine_has_relative_lri(const struct intel_engine_cs *engine) > > +{ > > + if (INTEL_GEN(engine->i915) < 11) > > + return false; > > + > > + return true; > > We already have intel_engine_has_relative_mmio(), can just re-use that. Note > that I915_ENGINE_HAS_RELATIVE_MMIO is only set for gen12+ at the moment; > this was because CI failed on ICL and since we urgently needed the change > for gen12 we just excluded gen11 and pushed (see Mika's comment @ > https://lists.freedesktop.org/archives/intel-gfx/2019-September/211812.html). > It should be ok to extend that to gen11 if we get a green CI. > Let me send out a trybot with intel_engine_has_relative_mmio with this enabled for gen11. > > +} > > + > > +static void lri_init(struct intel_engine_cs *engine) > > +{ > > + if (i915_engine_has_relative_lri(engine)) { > > + engine->lri_cmd_mode = MI_LRI_LRM_CS_MMIO; > > + engine->lri_mmio_base = 0; > > + } else { > > + engine->lri_cmd_mode = 0; > > + engine->lri_mmio_base = engine->mmio_base; > > + } > > +} > > + > > static void __sprint_engine_name(struct intel_engine_cs *engine) > > { > > /* > > @@ -329,6 +349,8 @@ static int intel_engine_setup(struct intel_gt *gt, enum intel_engine_id id) > > /* Nothing to do here, execute in order of dependencies */ > > engine->schedule = NULL; > > + lri_init(engine); > > + > > ewma__engine_latency_init(&engine->latency); > > seqcount_init(&engine->stats.lock); > > diff --git a/drivers/gpu/drm/i915/gt/intel_engine_types.h b/drivers/gpu/drm/i915/gt/intel_engine_types.h > > index 9ef349cd5cea..e48da23c9b0f 100644 > > --- a/drivers/gpu/drm/i915/gt/intel_engine_types.h > > +++ b/drivers/gpu/drm/i915/gt/intel_engine_types.h > > @@ -310,6 +310,9 @@ struct intel_engine_cs { > > u32 context_size; > > u32 mmio_base; > > + u32 lri_mmio_base; > > + u32 lri_cmd_mode; > > + > > /* > > * Some w/a require forcewake to be held (which prevents RC6) while > > * a particular engine is active. If so, we set fw_domain to which > > diff --git a/drivers/gpu/drm/i915/gt/intel_gpu_commands.h b/drivers/gpu/drm/i915/gt/intel_gpu_commands.h > > index 2694dbb9967e..f0f101134fd8 100644 > > --- a/drivers/gpu/drm/i915/gt/intel_gpu_commands.h > > +++ b/drivers/gpu/drm/i915/gt/intel_gpu_commands.h > > @@ -134,8 +134,14 @@ > > * simply ignores the register load under certain conditions. > > * - One can actually load arbitrary many arbitrary registers: Simply issue x > > * address/value pairs. Don't overdue it, though, x <= 2^4 must hold! > > + * - Newer hardware supports engine relative addressing but older hardware does > > + * not. This is required for hw engine load balancing. The > > + * MI_LOAD_REGISTER_IMM_REL macro can be used on both newer and older > > + * hardware. > > */ > > #define MI_LOAD_REGISTER_IMM(x) MI_INSTR(0x22, 2*(x)-1) > > +#define MI_LOAD_REGISTER_IMM_REL(egine, x) \ > > + (MI_LOAD_REGISTER_IMM(x) | engine->lri_cmd_mode) > > This naming is a bit confusing, because MI_LOAD_REGISTER_IMM_REL is not > actually always relative so we also need to be careful of how we provide the > register values (i.e. with or without the mmio base). Also a bit worrying > for future proofing, since we'd need to make sure that any new CS register > access goes explicitly relative. Just my 2 cents, I know there was > contention on this patch in the past so I'm not going to jump in on the > fight :) > In the LRC the upper bits of the base is just ignored, while in ring it is added. It is a bit confusing but the comment message explains this. MI_LOAD_REGISTER_IMM_REL was Tvrtko's suggestion and I personally like it. It is total bikeshed how this should look, I'd say let's go with this and move on. > I have not checked if any of the other numerous instances of > MI_LOAD_REGISTER_IMM would benefit from going relative. I assume none is > strictly required, since otherwise virtual engines wouldn't work. > I did a quick browse of the driver and I think I am missing some instances. Let scrub the driver + fix this up with my next trybot attempt. Matt > Daniele > > > /* Gen11+. addr = base + (ctx_restore ? offset & GENMASK(12,2) : offset) */ > > #define MI_LRI_LRM_CS_MMIO REG_BIT(19) > > #define MI_LRI_FORCE_POSTED (1<<12) > > diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c > > index aafe2a4df496..390628666564 100644 > > --- a/drivers/gpu/drm/i915/gt/intel_lrc.c > > +++ b/drivers/gpu/drm/i915/gt/intel_lrc.c > > @@ -44,11 +44,9 @@ static void set_offsets(u32 *regs, > > flags = *data >> 6; > > data++; > > - *regs = MI_LOAD_REGISTER_IMM(count); > > + *regs = MI_LOAD_REGISTER_IMM_REL(engine, count); > > if (flags & POSTED) > > *regs |= MI_LRI_FORCE_POSTED; > > - if (INTEL_GEN(engine->i915) >= 11) > > - *regs |= MI_LRI_LRM_CS_MMIO; > > regs++; > > GEM_BUG_ON(!count); > _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Intel-gfx] [PATCH 1/1] drm/i915: Engine relative MMIO 2021-05-27 2:43 ` Matthew Brost @ 2021-05-27 2:59 ` Matthew Brost 0 siblings, 0 replies; 7+ messages in thread From: Matthew Brost @ 2021-05-27 2:59 UTC (permalink / raw) To: Daniele Ceraolo Spurio; +Cc: intel-gfx, dri-devel On Wed, May 26, 2021 at 07:43:02PM -0700, Matthew Brost wrote: > On Wed, May 26, 2021 at 06:34:44PM -0700, Daniele Ceraolo Spurio wrote: > > > > > > On 5/26/2021 12:11 PM, Matthew Brost wrote: > > > With virtual engines, it is no longer possible to know which specific > > > physical engine a given request will be executed on at the time that > > > request is generated. This means that the request itself must be engine > > > agnostic - any direct register writes must be relative to the engine > > > and not absolute addresses. > > > > > > The LRI command has support for engine relative addressing. However, > > > the mechanism is not transparent to the driver. The scheme for Gen11 > > > (MI_LRI_ADD_CS_MMIO_START) requires the LRI address to have no > > > absolute engine base component in the ring and BBs. The hardware then > > > adds on the correct engine offset at execution time. This differs > > > slightly for LRC where the upper bits of the base component are just > > > ignored. > > > > > > Due to the non-trivial and differing schemes on different hardware, it > > > is not possible to simply update the code that creates the LRI > > > commands to set a remap flag and let the hardware get on with it. > > > Instead, this patch adds function wrappers for generating the LRI > > > command itself and then for constructing the correct address to use > > > with the LRI. > > > > > > Bspec: 45606 > > > Signed-off-by: John Harrison <John.C.Harrison@Intel.com> > > > Signed-off-by: Matthew Brost <matthew.brost@intel.com> > > > CC: Rodrigo Vivi <rodrigo.vivi@intel.com> > > > CC: Tvrtko Ursulin <tvrtko.ursulin@intel.com> > > > CC: Chris P Wilson <chris.p.wilson@intel.com> > > > CC: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com> > > > --- > > > drivers/gpu/drm/i915/gem/i915_gem_context.c | 7 ++++--- > > > drivers/gpu/drm/i915/gt/intel_engine_cs.c | 22 ++++++++++++++++++++ > > > drivers/gpu/drm/i915/gt/intel_engine_types.h | 3 +++ > > > drivers/gpu/drm/i915/gt/intel_gpu_commands.h | 6 ++++++ > > > drivers/gpu/drm/i915/gt/intel_lrc.c | 4 +--- > > > 5 files changed, 36 insertions(+), 6 deletions(-) > > > > > > diff --git a/drivers/gpu/drm/i915/gem/i915_gem_context.c b/drivers/gpu/drm/i915/gem/i915_gem_context.c > > > index 188dee13e017..a8a195bfcb57 100644 > > > --- a/drivers/gpu/drm/i915/gem/i915_gem_context.c > > > +++ b/drivers/gpu/drm/i915/gem/i915_gem_context.c > > > @@ -1211,7 +1211,7 @@ static int emit_ppgtt_update(struct i915_request *rq, void *data) > > > { > > > struct i915_address_space *vm = rq->context->vm; > > > struct intel_engine_cs *engine = rq->engine; > > > - u32 base = engine->mmio_base; > > > + u32 base = engine->lri_mmio_base; > > > u32 *cs; > > > int i; > > > @@ -1223,7 +1223,7 @@ static int emit_ppgtt_update(struct i915_request *rq, void *data) > > > if (IS_ERR(cs)) > > > return PTR_ERR(cs); > > > - *cs++ = MI_LOAD_REGISTER_IMM(2); > > > + *cs++ = MI_LOAD_REGISTER_IMM_REL(engine, 2); > > > > This is the only place where you changed the behavior and I think it is > > going away > > (https://lists.freedesktop.org/archives/dri-devel/2021-May/305328.html), so > > the new macro is potentially not needed. > > > > See my last comment, I think this irrelevant as I think I missed some > cases where this macro should be used. > Actually this wrong, the macro is indeed used in all the places it is needed. Let me talk to Jason tomororw about when he expects his series to land, I suspect it is going to take a bit as IGTs have to updated as well. If GuC virtual engines land before his series we need this. Even his series lands first adding this macro + hooks isn't a terrible idea. Matt > > > *cs++ = i915_mmio_reg_offset(GEN8_RING_PDP_UDW(base, 0)); > > > *cs++ = upper_32_bits(pd_daddr); > > > @@ -1245,7 +1245,8 @@ static int emit_ppgtt_update(struct i915_request *rq, void *data) > > > if (IS_ERR(cs)) > > > return PTR_ERR(cs); > > > - *cs++ = MI_LOAD_REGISTER_IMM(2 * GEN8_3LVL_PDPES) | MI_LRI_FORCE_POSTED; > > > + *cs++ = MI_LOAD_REGISTER_IMM_REL(engine, 2 * GEN8_3LVL_PDPES) | > > > + MI_LRI_FORCE_POSTED; > > > for (i = GEN8_3LVL_PDPES; i--; ) { > > > const dma_addr_t pd_daddr = i915_page_dir_dma_addr(ppgtt, i); > > > diff --git a/drivers/gpu/drm/i915/gt/intel_engine_cs.c b/drivers/gpu/drm/i915/gt/intel_engine_cs.c > > > index 3f9a811eb02b..0de6bc533776 100644 > > > --- a/drivers/gpu/drm/i915/gt/intel_engine_cs.c > > > +++ b/drivers/gpu/drm/i915/gt/intel_engine_cs.c > > > @@ -15,6 +15,7 @@ > > > #include "intel_engine_pm.h" > > > #include "intel_engine_user.h" > > > #include "intel_execlists_submission.h" > > > +#include "intel_gpu_commands.h" > > > #include "intel_gt.h" > > > #include "intel_gt_requests.h" > > > #include "intel_gt_pm.h" > > > @@ -222,6 +223,25 @@ static u32 __engine_mmio_base(struct drm_i915_private *i915, > > > return bases[i].base; > > > } > > > +static bool i915_engine_has_relative_lri(const struct intel_engine_cs *engine) > > > +{ > > > + if (INTEL_GEN(engine->i915) < 11) > > > + return false; > > > + > > > + return true; > > > > We already have intel_engine_has_relative_mmio(), can just re-use that. Note > > that I915_ENGINE_HAS_RELATIVE_MMIO is only set for gen12+ at the moment; > > this was because CI failed on ICL and since we urgently needed the change > > for gen12 we just excluded gen11 and pushed (see Mika's comment @ > > https://lists.freedesktop.org/archives/intel-gfx/2019-September/211812.html). > > It should be ok to extend that to gen11 if we get a green CI. > > > > Let me send out a trybot with intel_engine_has_relative_mmio with this > enabled for gen11. > > > > +} > > > + > > > +static void lri_init(struct intel_engine_cs *engine) > > > +{ > > > + if (i915_engine_has_relative_lri(engine)) { > > > + engine->lri_cmd_mode = MI_LRI_LRM_CS_MMIO; > > > + engine->lri_mmio_base = 0; > > > + } else { > > > + engine->lri_cmd_mode = 0; > > > + engine->lri_mmio_base = engine->mmio_base; > > > + } > > > +} > > > + > > > static void __sprint_engine_name(struct intel_engine_cs *engine) > > > { > > > /* > > > @@ -329,6 +349,8 @@ static int intel_engine_setup(struct intel_gt *gt, enum intel_engine_id id) > > > /* Nothing to do here, execute in order of dependencies */ > > > engine->schedule = NULL; > > > + lri_init(engine); > > > + > > > ewma__engine_latency_init(&engine->latency); > > > seqcount_init(&engine->stats.lock); > > > diff --git a/drivers/gpu/drm/i915/gt/intel_engine_types.h b/drivers/gpu/drm/i915/gt/intel_engine_types.h > > > index 9ef349cd5cea..e48da23c9b0f 100644 > > > --- a/drivers/gpu/drm/i915/gt/intel_engine_types.h > > > +++ b/drivers/gpu/drm/i915/gt/intel_engine_types.h > > > @@ -310,6 +310,9 @@ struct intel_engine_cs { > > > u32 context_size; > > > u32 mmio_base; > > > + u32 lri_mmio_base; > > > + u32 lri_cmd_mode; > > > + > > > /* > > > * Some w/a require forcewake to be held (which prevents RC6) while > > > * a particular engine is active. If so, we set fw_domain to which > > > diff --git a/drivers/gpu/drm/i915/gt/intel_gpu_commands.h b/drivers/gpu/drm/i915/gt/intel_gpu_commands.h > > > index 2694dbb9967e..f0f101134fd8 100644 > > > --- a/drivers/gpu/drm/i915/gt/intel_gpu_commands.h > > > +++ b/drivers/gpu/drm/i915/gt/intel_gpu_commands.h > > > @@ -134,8 +134,14 @@ > > > * simply ignores the register load under certain conditions. > > > * - One can actually load arbitrary many arbitrary registers: Simply issue x > > > * address/value pairs. Don't overdue it, though, x <= 2^4 must hold! > > > + * - Newer hardware supports engine relative addressing but older hardware does > > > + * not. This is required for hw engine load balancing. The > > > + * MI_LOAD_REGISTER_IMM_REL macro can be used on both newer and older > > > + * hardware. > > > */ > > > #define MI_LOAD_REGISTER_IMM(x) MI_INSTR(0x22, 2*(x)-1) > > > +#define MI_LOAD_REGISTER_IMM_REL(egine, x) \ > > > + (MI_LOAD_REGISTER_IMM(x) | engine->lri_cmd_mode) > > > > This naming is a bit confusing, because MI_LOAD_REGISTER_IMM_REL is not > > actually always relative so we also need to be careful of how we provide the > > register values (i.e. with or without the mmio base). Also a bit worrying > > for future proofing, since we'd need to make sure that any new CS register > > access goes explicitly relative. Just my 2 cents, I know there was > > contention on this patch in the past so I'm not going to jump in on the > > fight :) > > > > In the LRC the upper bits of the base is just ignored, while in ring it > is added. It is a bit confusing but the comment message explains this. > > MI_LOAD_REGISTER_IMM_REL was Tvrtko's suggestion and I personally like > it. It is total bikeshed how this should look, I'd say let's go with > this and move on. > > > I have not checked if any of the other numerous instances of > > MI_LOAD_REGISTER_IMM would benefit from going relative. I assume none is > > strictly required, since otherwise virtual engines wouldn't work. > > > > I did a quick browse of the driver and I think I am missing some > instances. Let scrub the driver + fix this up with my next trybot > attempt. > > Matt > > > Daniele > > > > > /* Gen11+. addr = base + (ctx_restore ? offset & GENMASK(12,2) : offset) */ > > > #define MI_LRI_LRM_CS_MMIO REG_BIT(19) > > > #define MI_LRI_FORCE_POSTED (1<<12) > > > diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c > > > index aafe2a4df496..390628666564 100644 > > > --- a/drivers/gpu/drm/i915/gt/intel_lrc.c > > > +++ b/drivers/gpu/drm/i915/gt/intel_lrc.c > > > @@ -44,11 +44,9 @@ static void set_offsets(u32 *regs, > > > flags = *data >> 6; > > > data++; > > > - *regs = MI_LOAD_REGISTER_IMM(count); > > > + *regs = MI_LOAD_REGISTER_IMM_REL(engine, count); > > > if (flags & POSTED) > > > *regs |= MI_LRI_FORCE_POSTED; > > > - if (INTEL_GEN(engine->i915) >= 11) > > > - *regs |= MI_LRI_LRM_CS_MMIO; > > > regs++; > > > GEM_BUG_ON(!count); > > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/intel-gfx _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for Engine relative MMIO 2021-05-26 19:11 [Intel-gfx] [PATCH 0/1] Engine relative MMIO Matthew Brost 2021-05-26 19:11 ` [Intel-gfx] [PATCH 1/1] drm/i915: " Matthew Brost @ 2021-05-27 0:34 ` Patchwork 2021-05-27 14:05 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork 2 siblings, 0 replies; 7+ messages in thread From: Patchwork @ 2021-05-27 0:34 UTC (permalink / raw) To: Matthew Brost; +Cc: intel-gfx [-- Attachment #1.1: Type: text/plain, Size: 6079 bytes --] == Series Details == Series: Engine relative MMIO URL : https://patchwork.freedesktop.org/series/90627/ State : success == Summary == CI Bug Log - changes from CI_DRM_10138 -> Patchwork_20213 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/index.html Known issues ------------ Here are the changes found in Patchwork_20213 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@amdgpu/amd_cs_nop@sync-fork-compute0: - fi-snb-2600: NOTRUN -> [SKIP][1] ([fdo#109271]) +17 similar issues [1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/fi-snb-2600/igt@amdgpu/amd_cs_nop@sync-fork-compute0.html * igt@core_hotunplug@unbind-rebind: - fi-bdw-5557u: NOTRUN -> [WARN][2] ([i915#2283]) [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/fi-bdw-5557u/igt@core_hotunplug@unbind-rebind.html * igt@i915_selftest@live@execlists: - fi-bdw-5557u: NOTRUN -> [DMESG-FAIL][3] ([i915#3462]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/fi-bdw-5557u/igt@i915_selftest@live@execlists.html * igt@kms_chamelium@dp-crc-fast: - fi-kbl-7500u: [PASS][4] -> [FAIL][5] ([i915#1372]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/fi-kbl-7500u/igt@kms_chamelium@dp-crc-fast.html [5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/fi-kbl-7500u/igt@kms_chamelium@dp-crc-fast.html - fi-bdw-5557u: NOTRUN -> [SKIP][6] ([fdo#109271] / [fdo#111827]) +8 similar issues [6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/fi-bdw-5557u/igt@kms_chamelium@dp-crc-fast.html * igt@kms_psr@cursor_plane_move: - fi-bdw-5557u: NOTRUN -> [SKIP][7] ([fdo#109271]) +9 similar issues [7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/fi-bdw-5557u/igt@kms_psr@cursor_plane_move.html #### Possible fixes #### * igt@i915_selftest@live@hangcheck: - fi-snb-2600: [INCOMPLETE][8] ([i915#2782]) -> [PASS][9] [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/fi-snb-2600/igt@i915_selftest@live@hangcheck.html [9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/fi-snb-2600/igt@i915_selftest@live@hangcheck.html #### Warnings #### * igt@i915_selftest@live@execlists: - fi-tgl-u2: [DMESG-FAIL][10] ([i915#3462]) -> [INCOMPLETE][11] ([i915#3462]) [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/fi-tgl-u2/igt@i915_selftest@live@execlists.html [11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/fi-tgl-u2/igt@i915_selftest@live@execlists.html * igt@runner@aborted: - fi-cfl-8700k: [FAIL][12] ([i915#3363]) -> [FAIL][13] ([i915#2426] / [i915#3363]) [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/fi-cfl-8700k/igt@runner@aborted.html [13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/fi-cfl-8700k/igt@runner@aborted.html - fi-skl-6600u: [FAIL][14] ([i915#1436] / [i915#3363]) -> [FAIL][15] ([i915#1436] / [i915#2426] / [i915#3363]) [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/fi-skl-6600u/igt@runner@aborted.html [15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/fi-skl-6600u/igt@runner@aborted.html - fi-glk-dsi: [FAIL][16] ([i915#2426] / [i915#3363] / [k.org#202321]) -> [FAIL][17] ([i915#3363] / [k.org#202321]) [16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/fi-glk-dsi/igt@runner@aborted.html [17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/fi-glk-dsi/igt@runner@aborted.html - fi-bdw-5557u: [FAIL][18] ([i915#1602] / [i915#2029]) -> [FAIL][19] ([i915#3462]) [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/fi-bdw-5557u/igt@runner@aborted.html [19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/fi-bdw-5557u/igt@runner@aborted.html - fi-kbl-7567u: [FAIL][20] ([i915#1436] / [i915#3363]) -> [FAIL][21] ([i915#1436] / [i915#2426] / [i915#3363]) [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/fi-kbl-7567u/igt@runner@aborted.html [21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/fi-kbl-7567u/igt@runner@aborted.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827 [i915#1372]: https://gitlab.freedesktop.org/drm/intel/issues/1372 [i915#1436]: https://gitlab.freedesktop.org/drm/intel/issues/1436 [i915#1602]: https://gitlab.freedesktop.org/drm/intel/issues/1602 [i915#2029]: https://gitlab.freedesktop.org/drm/intel/issues/2029 [i915#2283]: https://gitlab.freedesktop.org/drm/intel/issues/2283 [i915#2426]: https://gitlab.freedesktop.org/drm/intel/issues/2426 [i915#2782]: https://gitlab.freedesktop.org/drm/intel/issues/2782 [i915#3303]: https://gitlab.freedesktop.org/drm/intel/issues/3303 [i915#3363]: https://gitlab.freedesktop.org/drm/intel/issues/3363 [i915#3462]: https://gitlab.freedesktop.org/drm/intel/issues/3462 [k.org#202321]: https://bugzilla.kernel.org/show_bug.cgi?id=202321 Participating hosts (44 -> 40) ------------------------------ Missing (4): fi-cml-drallion fi-ilk-m540 fi-bdw-samus fi-hsw-4200u Build changes ------------- * Linux: CI_DRM_10138 -> Patchwork_20213 CI-20190529: 20190529 CI_DRM_10138: 041f69e539b30565783cd1298842cc269f5005cb @ git://anongit.freedesktop.org/gfx-ci/linux IGT_6094: f62d8953c0bc5ed68ea978662e62f9dbb46cf101 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools Patchwork_20213: 02d83a340e4a51467840d36e421da8e0d99dcef4 @ git://anongit.freedesktop.org/gfx-ci/linux == Linux commits == 02d83a340e4a drm/i915: Engine relative MMIO == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/index.html [-- Attachment #1.2: Type: text/html, Size: 8116 bytes --] [-- Attachment #2: Type: text/plain, Size: 160 bytes --] _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Intel-gfx] ✓ Fi.CI.IGT: success for Engine relative MMIO 2021-05-26 19:11 [Intel-gfx] [PATCH 0/1] Engine relative MMIO Matthew Brost 2021-05-26 19:11 ` [Intel-gfx] [PATCH 1/1] drm/i915: " Matthew Brost 2021-05-27 0:34 ` [Intel-gfx] ✓ Fi.CI.BAT: success for " Patchwork @ 2021-05-27 14:05 ` Patchwork 2 siblings, 0 replies; 7+ messages in thread From: Patchwork @ 2021-05-27 14:05 UTC (permalink / raw) To: Matthew Brost; +Cc: intel-gfx [-- Attachment #1.1: Type: text/plain, Size: 30243 bytes --] == Series Details == Series: Engine relative MMIO URL : https://patchwork.freedesktop.org/series/90627/ State : success == Summary == CI Bug Log - changes from CI_DRM_10138_full -> Patchwork_20213_full ==================================================== Summary ------- **SUCCESS** No regressions found. Known issues ------------ Here are the changes found in Patchwork_20213_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_ctx_isolation@preservation-s3@vcs0: - shard-skl: [PASS][1] -> [INCOMPLETE][2] ([i915#198]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-skl1/igt@gem_ctx_isolation@preservation-s3@vcs0.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl7/igt@gem_ctx_isolation@preservation-s3@vcs0.html * igt@gem_ctx_persistence@legacy-engines-queued: - shard-snb: NOTRUN -> [SKIP][3] ([fdo#109271] / [i915#1099]) +4 similar issues [3]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-snb2/igt@gem_ctx_persistence@legacy-engines-queued.html * igt@gem_eio@in-flight-contexts-10ms: - shard-tglb: [PASS][4] -> [TIMEOUT][5] ([i915#3063]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-tglb1/igt@gem_eio@in-flight-contexts-10ms.html [5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-tglb6/igt@gem_eio@in-flight-contexts-10ms.html * igt@gem_exec_fair@basic-deadline: - shard-glk: [PASS][6] -> [FAIL][7] ([i915#2846]) [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-glk6/igt@gem_exec_fair@basic-deadline.html [7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-glk9/igt@gem_exec_fair@basic-deadline.html * igt@gem_exec_fair@basic-none@vcs1: - shard-iclb: NOTRUN -> [FAIL][8] ([i915#2842]) [8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb4/igt@gem_exec_fair@basic-none@vcs1.html * igt@gem_exec_fair@basic-pace@vcs0: - shard-kbl: [PASS][9] -> [FAIL][10] ([i915#2842]) [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl4/igt@gem_exec_fair@basic-pace@vcs0.html [10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl1/igt@gem_exec_fair@basic-pace@vcs0.html * igt@gem_exec_reloc@basic-wide-active@vcs1: - shard-iclb: NOTRUN -> [FAIL][11] ([i915#2389]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb1/igt@gem_exec_reloc@basic-wide-active@vcs1.html * igt@gem_mmap_gtt@cpuset-basic-small-copy: - shard-skl: [PASS][12] -> [INCOMPLETE][13] ([i915#198] / [i915#3468]) [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-skl10/igt@gem_mmap_gtt@cpuset-basic-small-copy.html [13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl10/igt@gem_mmap_gtt@cpuset-basic-small-copy.html - shard-kbl: NOTRUN -> [INCOMPLETE][14] ([i915#3468]) [14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl3/igt@gem_mmap_gtt@cpuset-basic-small-copy.html * igt@gem_mmap_gtt@cpuset-basic-small-copy-xy: - shard-iclb: [PASS][15] -> [INCOMPLETE][16] ([i915#3468]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-iclb6/igt@gem_mmap_gtt@cpuset-basic-small-copy-xy.html [16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb6/igt@gem_mmap_gtt@cpuset-basic-small-copy-xy.html * igt@gem_mmap_gtt@cpuset-medium-copy-xy: - shard-tglb: [PASS][17] -> [INCOMPLETE][18] ([i915#3468] / [i915#750]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-tglb7/igt@gem_mmap_gtt@cpuset-medium-copy-xy.html [18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-tglb8/igt@gem_mmap_gtt@cpuset-medium-copy-xy.html - shard-glk: NOTRUN -> [INCOMPLETE][19] ([i915#3468]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-glk8/igt@gem_mmap_gtt@cpuset-medium-copy-xy.html * igt@gem_mmap_gtt@fault-concurrent: - shard-apl: NOTRUN -> [INCOMPLETE][20] ([i915#3468]) [20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl1/igt@gem_mmap_gtt@fault-concurrent.html * igt@gem_mmap_gtt@fault-concurrent-x: - shard-skl: NOTRUN -> [INCOMPLETE][21] ([i915#198] / [i915#3468]) [21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl5/igt@gem_mmap_gtt@fault-concurrent-x.html * igt@gem_mmap_gtt@fault-concurrent-y: - shard-skl: NOTRUN -> [INCOMPLETE][22] ([i915#3468]) [22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl1/igt@gem_mmap_gtt@fault-concurrent-y.html * igt@gem_pwrite@basic-exhaustion: - shard-snb: NOTRUN -> [WARN][23] ([i915#2658]) +1 similar issue [23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-snb2/igt@gem_pwrite@basic-exhaustion.html - shard-apl: NOTRUN -> [WARN][24] ([i915#2658]) [24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl3/igt@gem_pwrite@basic-exhaustion.html * igt@gem_userptr_blits@unsync-unmap: - shard-iclb: NOTRUN -> [SKIP][25] ([i915#3297]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb1/igt@gem_userptr_blits@unsync-unmap.html * igt@gem_userptr_blits@vma-merge: - shard-apl: NOTRUN -> [FAIL][26] ([i915#3318]) [26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl8/igt@gem_userptr_blits@vma-merge.html * igt@gen7_exec_parse@batch-without-end: - shard-iclb: NOTRUN -> [SKIP][27] ([fdo#109289]) [27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb2/igt@gen7_exec_parse@batch-without-end.html * igt@kms_async_flips@alternate-sync-async-flip: - shard-skl: [PASS][28] -> [FAIL][29] ([i915#2521]) [28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-skl5/igt@kms_async_flips@alternate-sync-async-flip.html [29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl2/igt@kms_async_flips@alternate-sync-async-flip.html * igt@kms_big_joiner@invalid-modeset: - shard-apl: NOTRUN -> [SKIP][30] ([fdo#109271] / [i915#2705]) [30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl1/igt@kms_big_joiner@invalid-modeset.html * igt@kms_ccs@pipe-c-ccs-on-another-bo: - shard-skl: NOTRUN -> [SKIP][31] ([fdo#109271] / [fdo#111304]) [31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl5/igt@kms_ccs@pipe-c-ccs-on-another-bo.html * igt@kms_chamelium@dp-frame-dump: - shard-iclb: NOTRUN -> [SKIP][32] ([fdo#109284] / [fdo#111827]) +2 similar issues [32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb2/igt@kms_chamelium@dp-frame-dump.html * igt@kms_chamelium@hdmi-aspect-ratio: - shard-skl: NOTRUN -> [SKIP][33] ([fdo#109271] / [fdo#111827]) +5 similar issues [33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl5/igt@kms_chamelium@hdmi-aspect-ratio.html * igt@kms_chamelium@hdmi-edid-change-during-suspend: - shard-apl: NOTRUN -> [SKIP][34] ([fdo#109271] / [fdo#111827]) +24 similar issues [34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl3/igt@kms_chamelium@hdmi-edid-change-during-suspend.html * igt@kms_chamelium@vga-hpd-without-ddc: - shard-snb: NOTRUN -> [SKIP][35] ([fdo#109271] / [fdo#111827]) +23 similar issues [35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-snb5/igt@kms_chamelium@vga-hpd-without-ddc.html * igt@kms_color_chamelium@pipe-c-ctm-0-75: - shard-kbl: NOTRUN -> [SKIP][36] ([fdo#109271] / [fdo#111827]) [36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl7/igt@kms_color_chamelium@pipe-c-ctm-0-75.html * igt@kms_color_chamelium@pipe-d-gamma: - shard-iclb: NOTRUN -> [SKIP][37] ([fdo#109278] / [fdo#109284] / [fdo#111827]) +1 similar issue [37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb2/igt@kms_color_chamelium@pipe-d-gamma.html * igt@kms_content_protection@atomic-dpms: - shard-apl: NOTRUN -> [TIMEOUT][38] ([i915#1319]) [38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl8/igt@kms_content_protection@atomic-dpms.html * igt@kms_cursor_crc@pipe-b-cursor-64x21-onscreen: - shard-apl: NOTRUN -> [FAIL][39] ([i915#3444]) [39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl3/igt@kms_cursor_crc@pipe-b-cursor-64x21-onscreen.html * igt@kms_cursor_crc@pipe-d-cursor-128x128-rapid-movement: - shard-glk: NOTRUN -> [SKIP][40] ([fdo#109271]) +28 similar issues [40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-glk8/igt@kms_cursor_crc@pipe-d-cursor-128x128-rapid-movement.html * igt@kms_cursor_edge_walk@pipe-d-128x128-right-edge: - shard-snb: NOTRUN -> [SKIP][41] ([fdo#109271]) +392 similar issues [41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-snb5/igt@kms_cursor_edge_walk@pipe-d-128x128-right-edge.html * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size: - shard-skl: [PASS][42] -> [FAIL][43] ([i915#2346] / [i915#533]) [42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-skl10/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html [43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl7/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html * igt@kms_fbcon_fbt@fbc-suspend: - shard-kbl: [PASS][44] -> [INCOMPLETE][45] ([i915#155] / [i915#180] / [i915#636]) [44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl4/igt@kms_fbcon_fbt@fbc-suspend.html [45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl3/igt@kms_fbcon_fbt@fbc-suspend.html * igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1: - shard-skl: NOTRUN -> [FAIL][46] ([i915#79]) +2 similar issues [46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl1/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1.html * igt@kms_flip@flip-vs-suspend-interruptible@a-dp1: - shard-kbl: [PASS][47] -> [DMESG-WARN][48] ([i915#180]) +6 similar issues [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl1/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html [48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl1/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html * igt@kms_flip@plain-flip-fb-recreate-interruptible@b-edp1: - shard-skl: [PASS][49] -> [FAIL][50] ([i915#2122]) +3 similar issues [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-skl10/igt@kms_flip@plain-flip-fb-recreate-interruptible@b-edp1.html [50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl5/igt@kms_flip@plain-flip-fb-recreate-interruptible@b-edp1.html * igt@kms_frontbuffer_tracking@fbc-1p-shrfb-fliptrack-mmap-gtt: - shard-skl: NOTRUN -> [SKIP][51] ([fdo#109271]) +62 similar issues [51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl5/igt@kms_frontbuffer_tracking@fbc-1p-shrfb-fliptrack-mmap-gtt.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-mmap-cpu: - shard-kbl: NOTRUN -> [SKIP][52] ([fdo#109271]) +21 similar issues [52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl7/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-shrfb-draw-mmap-cpu.html * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-indfb-plflip-blt: - shard-iclb: NOTRUN -> [SKIP][53] ([fdo#109280]) +2 similar issues [53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb2/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-indfb-plflip-blt.html * igt@kms_hdr@bpc-switch-suspend: - shard-skl: [PASS][54] -> [FAIL][55] ([i915#1188]) [54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-skl2/igt@kms_hdr@bpc-switch-suspend.html [55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl2/igt@kms_hdr@bpc-switch-suspend.html * igt@kms_pipe_crc_basic@read-crc-pipe-d: - shard-apl: NOTRUN -> [SKIP][56] ([fdo#109271] / [i915#533]) +1 similar issue [56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl8/igt@kms_pipe_crc_basic@read-crc-pipe-d.html * igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b: - shard-apl: [PASS][57] -> [DMESG-WARN][58] ([i915#180]) [57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-apl2/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b.html [58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl1/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b.html * igt@kms_plane_alpha_blend@pipe-a-alpha-basic: - shard-apl: NOTRUN -> [FAIL][59] ([fdo#108145] / [i915#265]) +5 similar issues [59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl3/igt@kms_plane_alpha_blend@pipe-a-alpha-basic.html * igt@kms_plane_alpha_blend@pipe-a-alpha-transparent-fb: - shard-apl: NOTRUN -> [FAIL][60] ([i915#265]) [60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl1/igt@kms_plane_alpha_blend@pipe-a-alpha-transparent-fb.html * igt@kms_plane_alpha_blend@pipe-b-coverage-7efc: - shard-skl: [PASS][61] -> [FAIL][62] ([fdo#108145] / [i915#265]) +1 similar issue [61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-skl7/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html [62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl3/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html * igt@kms_plane_multiple@atomic-pipe-a-tiling-y: - shard-glk: [PASS][63] -> [DMESG-WARN][64] ([i915#118] / [i915#95]) [63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-glk2/igt@kms_plane_multiple@atomic-pipe-a-tiling-y.html [64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-glk9/igt@kms_plane_multiple@atomic-pipe-a-tiling-y.html * igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping: - shard-apl: NOTRUN -> [SKIP][65] ([fdo#109271] / [i915#2733]) [65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl1/igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-c-scaler-with-clipping-clamping.html * igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-4: - shard-apl: NOTRUN -> [SKIP][66] ([fdo#109271] / [i915#658]) +6 similar issues [66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl8/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-4.html * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-1: - shard-skl: NOTRUN -> [SKIP][67] ([fdo#109271] / [i915#658]) +1 similar issue [67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl5/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area-1.html * igt@kms_psr2_su@page_flip: - shard-glk: NOTRUN -> [SKIP][68] ([fdo#109271] / [i915#658]) [68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-glk8/igt@kms_psr2_su@page_flip.html * igt@kms_psr@psr2_dpms: - shard-iclb: [PASS][69] -> [SKIP][70] ([fdo#109441]) +1 similar issue [69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-iclb2/igt@kms_psr@psr2_dpms.html [70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb8/igt@kms_psr@psr2_dpms.html * igt@kms_setmode@basic: - shard-snb: NOTRUN -> [FAIL][71] ([i915#31]) [71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-snb2/igt@kms_setmode@basic.html * igt@kms_vblank@pipe-d-wait-forked: - shard-iclb: NOTRUN -> [SKIP][72] ([fdo#109278]) +1 similar issue [72]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb1/igt@kms_vblank@pipe-d-wait-forked.html * igt@kms_vblank@pipe-d-wait-forked-hang: - shard-apl: NOTRUN -> [SKIP][73] ([fdo#109271]) +227 similar issues [73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl8/igt@kms_vblank@pipe-d-wait-forked-hang.html * igt@kms_writeback@writeback-fb-id: - shard-skl: NOTRUN -> [SKIP][74] ([fdo#109271] / [i915#2437]) [74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl1/igt@kms_writeback@writeback-fb-id.html * igt@kms_writeback@writeback-pixel-formats: - shard-glk: NOTRUN -> [SKIP][75] ([fdo#109271] / [i915#2437]) [75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-glk8/igt@kms_writeback@writeback-pixel-formats.html * igt@prime_nv_pcopy@test3_3: - shard-iclb: NOTRUN -> [SKIP][76] ([fdo#109291]) [76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb2/igt@prime_nv_pcopy@test3_3.html * igt@sysfs_clients@create: - shard-skl: NOTRUN -> [SKIP][77] ([fdo#109271] / [i915#2994]) [77]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl5/igt@sysfs_clients@create.html * igt@sysfs_clients@split-25: - shard-apl: NOTRUN -> [SKIP][78] ([fdo#109271] / [i915#2994]) +3 similar issues [78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl8/igt@sysfs_clients@split-25.html * igt@sysfs_clients@split-50: - shard-kbl: NOTRUN -> [SKIP][79] ([fdo#109271] / [i915#2994]) [79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl7/igt@sysfs_clients@split-50.html #### Possible fixes #### * igt@gem_ctx_isolation@preservation-s3@bcs0: - shard-kbl: [DMESG-WARN][80] ([i915#180]) -> [PASS][81] +4 similar issues [80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl1/igt@gem_ctx_isolation@preservation-s3@bcs0.html [81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl2/igt@gem_ctx_isolation@preservation-s3@bcs0.html * igt@gem_ctx_ringsize@active@bcs0: - shard-skl: [INCOMPLETE][82] ([i915#3316]) -> [PASS][83] [82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-skl4/igt@gem_ctx_ringsize@active@bcs0.html [83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl7/igt@gem_ctx_ringsize@active@bcs0.html * igt@gem_exec_fair@basic-pace-share@rcs0: - shard-glk: [FAIL][84] ([i915#2842]) -> [PASS][85] [84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-glk5/igt@gem_exec_fair@basic-pace-share@rcs0.html [85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-glk4/igt@gem_exec_fair@basic-pace-share@rcs0.html * igt@gem_exec_fair@basic-pace@bcs0: - shard-tglb: [FAIL][86] ([i915#2842]) -> [PASS][87] +1 similar issue [86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-tglb6/igt@gem_exec_fair@basic-pace@bcs0.html [87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-tglb2/igt@gem_exec_fair@basic-pace@bcs0.html * igt@gem_mmap_gtt@cpuset-basic-small-copy-odd: - shard-glk: [INCOMPLETE][88] ([i915#2055] / [i915#3468]) -> [PASS][89] [88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-glk6/igt@gem_mmap_gtt@cpuset-basic-small-copy-odd.html [89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-glk9/igt@gem_mmap_gtt@cpuset-basic-small-copy-odd.html * igt@gem_mmap_gtt@cpuset-big-copy-odd: - shard-glk: [FAIL][90] ([i915#307]) -> [PASS][91] [90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-glk4/igt@gem_mmap_gtt@cpuset-big-copy-odd.html [91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-glk5/igt@gem_mmap_gtt@cpuset-big-copy-odd.html * igt@gem_mmap_gtt@cpuset-medium-copy-xy: - shard-iclb: [INCOMPLETE][92] ([i915#3468]) -> [PASS][93] [92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-iclb3/igt@gem_mmap_gtt@cpuset-medium-copy-xy.html [93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb2/igt@gem_mmap_gtt@cpuset-medium-copy-xy.html * igt@gem_spin_batch@engines@vecs0: - shard-apl: [FAIL][94] ([i915#2898]) -> [PASS][95] [94]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-apl8/igt@gem_spin_batch@engines@vecs0.html [95]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl2/igt@gem_spin_batch@engines@vecs0.html * igt@gem_userptr_blits@huge-split: - shard-tglb: [FAIL][96] ([i915#3376]) -> [PASS][97] [96]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-tglb1/igt@gem_userptr_blits@huge-split.html [97]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-tglb1/igt@gem_userptr_blits@huge-split.html * igt@kms_color@pipe-c-ctm-0-75: - shard-skl: [DMESG-WARN][98] ([i915#1982]) -> [PASS][99] [98]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-skl4/igt@kms_color@pipe-c-ctm-0-75.html [99]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl4/igt@kms_color@pipe-c-ctm-0-75.html * igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a2: - shard-glk: [FAIL][100] ([i915#79]) -> [PASS][101] [100]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-glk8/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a2.html [101]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-glk9/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a2.html * igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1: - shard-iclb: [FAIL][102] ([i915#79]) -> [PASS][103] [102]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-iclb3/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html [103]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb4/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html * igt@kms_flip@flip-vs-suspend@a-dp1: - shard-apl: [DMESG-WARN][104] ([i915#180]) -> [PASS][105] [104]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-apl6/igt@kms_flip@flip-vs-suspend@a-dp1.html [105]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-apl3/igt@kms_flip@flip-vs-suspend@a-dp1.html * igt@kms_hdr@bpc-switch: - shard-skl: [FAIL][106] ([i915#1188]) -> [PASS][107] [106]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-skl4/igt@kms_hdr@bpc-switch.html [107]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl4/igt@kms_hdr@bpc-switch.html * igt@kms_pipe_crc_basic@nonblocking-crc-pipe-c-frame-sequence: - shard-glk: [FAIL][108] ([i915#53]) -> [PASS][109] [108]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-glk2/igt@kms_pipe_crc_basic@nonblocking-crc-pipe-c-frame-sequence.html [109]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-glk5/igt@kms_pipe_crc_basic@nonblocking-crc-pipe-c-frame-sequence.html * igt@kms_psr2_su@page_flip: - shard-iclb: [SKIP][110] ([fdo#109642] / [fdo#111068] / [i915#658]) -> [PASS][111] [110]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-iclb3/igt@kms_psr2_su@page_flip.html [111]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb2/igt@kms_psr2_su@page_flip.html * igt@kms_psr@psr2_sprite_plane_move: - shard-iclb: [SKIP][112] ([fdo#109441]) -> [PASS][113] +1 similar issue [112]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-iclb1/igt@kms_psr@psr2_sprite_plane_move.html [113]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb2/igt@kms_psr@psr2_sprite_plane_move.html * igt@perf@polling-parameterized: - shard-skl: [FAIL][114] ([i915#1542]) -> [PASS][115] [114]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-skl10/igt@perf@polling-parameterized.html [115]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl5/igt@perf@polling-parameterized.html #### Warnings #### * igt@gem_mmap_gtt@cpuset-basic-small-copy-odd: - shard-skl: [INCOMPLETE][116] ([i915#198] / [i915#2910] / [i915#3468]) -> [INCOMPLETE][117] ([i915#198] / [i915#2910]) [116]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-skl10/igt@gem_mmap_gtt@cpuset-basic-small-copy-odd.html [117]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-skl5/igt@gem_mmap_gtt@cpuset-basic-small-copy-odd.html * igt@kms_flip@flip-vs-suspend@a-dp1: - shard-kbl: [DMESG-WARN][118] ([i915#180]) -> [INCOMPLETE][119] ([i915#155]) [118]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl7/igt@kms_flip@flip-vs-suspend@a-dp1.html [119]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl3/igt@kms_flip@flip-vs-suspend@a-dp1.html * igt@kms_psr2_sf@plane-move-sf-dmg-area-3: - shard-iclb: [SKIP][120] ([i915#658]) -> [SKIP][121] ([i915#2920]) [120]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-iclb1/igt@kms_psr2_sf@plane-move-sf-dmg-area-3.html [121]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb2/igt@kms_psr2_sf@plane-move-sf-dmg-area-3.html * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-1: - shard-iclb: [SKIP][122] ([i915#2920]) -> [SKIP][123] ([i915#658]) +1 similar issue [122]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-iclb2/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-1.html [123]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-iclb8/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-1.html * igt@runner@aborted: - shard-kbl: ([FAIL][124], [FAIL][125], [FAIL][126], [FAIL][127], [FAIL][128], [FAIL][129], [FAIL][130], [FAIL][131], [FAIL][132], [FAIL][133], [FAIL][134], [FAIL][135], [FAIL][136], [FAIL][137], [FAIL][138], [FAIL][139], [FAIL][140]) ([i915#1436] / [i915#180] / [i915#1814] / [i915#2292] / [i915#2722] / [i915#3002] / [i915#3363] / [i915#602]) -> ([FAIL][141], [FAIL][142], [FAIL][143], [FAIL][144], [FAIL][145], [FAIL][146], [FAIL][147], [FAIL][148], [FAIL][149], [FAIL][150], [FAIL][151], [FAIL][152], [FAIL][153], [FAIL][154], [FAIL][155], [FAIL][156]) ([i915#1436] / [i915#180] / [i915#1814] / [i915#2292] / [i915#2722] / [i915#3002] / [i915#3363] / [i915#602] / [i915#92]) [124]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl1/igt@runner@aborted.html [125]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl1/igt@runner@aborted.html [126]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl1/igt@runner@aborted.html [127]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl1/igt@runner@aborted.html [128]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl2/igt@runner@aborted.html [129]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl2/igt@runner@aborted.html [130]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl2/igt@runner@aborted.html [131]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl2/igt@runner@aborted.html [132]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl3/igt@runner@aborted.html [133]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl4/igt@runner@aborted.html [134]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl4/igt@runner@aborted.html [135]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl3/igt@runner@aborted.html [136]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl7/igt@runner@aborted.html [137]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl7/igt@runner@aborted.html [138]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl7/igt@runner@aborted.html [139]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl4/igt@runner@aborted.html [140]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_10138/shard-kbl4/igt@runner@aborted.html [141]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl1/igt@runner@aborted.html [142]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl4/igt@runner@aborted.html [143]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl1/igt@runner@aborted.html [144]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl3/igt@runner@aborted.html [145]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl2/igt@runner@aborted.html [146]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl1/igt@runner@aborted.html [147]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl4/igt@runner@aborted.html [148]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl7/igt@runner@aborted.html [149]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl7/igt@runner@aborted.html [150]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl2/igt@runner@aborted.html [151]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl2/igt@runner@aborted.html [152]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl1/igt@runner@aborted.html [153]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl3/igt@runner@aborted.html [154]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl3/igt@runner@aborted.html [155]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl7/igt@runner@aborted.html [156]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/shard-kbl7/igt@runner@aborted.html - shard-apl: ([FAIL][157], [FAIL][158], [FAIL][159]) ([i915#180] / [i915#2722] / [i915#3002] / [i915#3363]) -> ([FAIL][160], [FAIL][161], [FAIL][162]) ([fdo#109271] / [i915#1814] / [i915#2722] / [i915#3002] / == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_20213/index.html [-- Attachment #1.2: Type: text/html, Size: 33655 bytes --] [-- Attachment #2: Type: text/plain, Size: 160 bytes --] _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2021-05-27 14:05 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2021-05-26 19:11 [Intel-gfx] [PATCH 0/1] Engine relative MMIO Matthew Brost 2021-05-26 19:11 ` [Intel-gfx] [PATCH 1/1] drm/i915: " Matthew Brost 2021-05-27 1:34 ` Daniele Ceraolo Spurio 2021-05-27 2:43 ` Matthew Brost 2021-05-27 2:59 ` Matthew Brost 2021-05-27 0:34 ` [Intel-gfx] ✓ Fi.CI.BAT: success for " Patchwork 2021-05-27 14:05 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox