* [Intel-gfx] i915 clear-residuals BYT + IVB rendering issue + possible fix @ 2021-05-12 10:06 Hans de Goede 2021-05-12 12:18 ` Ville Syrjälä 2021-05-12 12:42 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for " Patchwork 0 siblings, 2 replies; 4+ messages in thread From: Hans de Goede @ 2021-05-12 10:06 UTC (permalink / raw) To: intel-gfx Hi All, We (Fedora) received a bug-report about rendering issues on BYT and IVB caused by the i915 clear-residuals work which landed in 5.10.y : The Fedora bug: https://bugzilla.redhat.com/show_bug.cgi?id=1959581 Points to these i915 bugs: https://gitlab.freedesktop.org/drm/intel/-/issues/3071 https://gitlab.freedesktop.org/drm/intel/-/issues/3081#note_890606 With the second link containing a possible fix which looks promising if someone can take a look at this, then that would be great: diff --git a/drivers/gpu/drm/i915/gt/gen7_renderclear.c b/drivers/gpu/drm/i915/gt/gen7_renderclear.c index de575fdb0..054a0f5b8 100644 --- a/drivers/gpu/drm/i915/gt/gen7_renderclear.c +++ b/drivers/gpu/drm/i915/gt/gen7_renderclear.c @@ -397,7 +397,7 @@ static void emit_batch(struct i915_vma * const vma, gen7_emit_pipeline_invalidate(&cmds); batch_add(&cmds, MI_LOAD_REGISTER_IMM(2)); batch_add(&cmds, i915_mmio_reg_offset(CACHE_MODE_0_GEN7)); - batch_add(&cmds, 0xffff0000); + batch_add(&cmds, 0xfffb0000); batch_add(&cmds, i915_mmio_reg_offset(CACHE_MODE_1)); batch_add(&cmds, 0xffff0000 | PIXEL_SUBSPAN_COLLECT_OPT_DISABLE); gen7_emit_pipeline_invalidate(&cmds); Note the: https://gitlab.freedesktop.org/drm/intel/-/issues/3081#note_890606 Link contains details about the what and why of this change. Regards, Hans _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [Intel-gfx] i915 clear-residuals BYT + IVB rendering issue + possible fix 2021-05-12 10:06 [Intel-gfx] i915 clear-residuals BYT + IVB rendering issue + possible fix Hans de Goede @ 2021-05-12 12:18 ` Ville Syrjälä 2021-05-12 12:34 ` Hans de Goede 2021-05-12 12:42 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for " Patchwork 1 sibling, 1 reply; 4+ messages in thread From: Ville Syrjälä @ 2021-05-12 12:18 UTC (permalink / raw) To: Hans de Goede; +Cc: intel-gfx On Wed, May 12, 2021 at 12:06:23PM +0200, Hans de Goede wrote: > Hi All, > > We (Fedora) received a bug-report about rendering issues > on BYT and IVB caused by the i915 clear-residuals work > which landed in 5.10.y : > > The Fedora bug: > https://bugzilla.redhat.com/show_bug.cgi?id=1959581 > > Points to these i915 bugs: > https://gitlab.freedesktop.org/drm/intel/-/issues/3071 > https://gitlab.freedesktop.org/drm/intel/-/issues/3081#note_890606 > > With the second link containing a possible fix which looks promising > if someone can take a look at this, then that would be great: > > diff --git a/drivers/gpu/drm/i915/gt/gen7_renderclear.c b/drivers/gpu/drm/i915/gt/gen7_renderclear.c > index de575fdb0..054a0f5b8 100644 > --- a/drivers/gpu/drm/i915/gt/gen7_renderclear.c > +++ b/drivers/gpu/drm/i915/gt/gen7_renderclear.c > @@ -397,7 +397,7 @@ static void emit_batch(struct i915_vma * const vma, > gen7_emit_pipeline_invalidate(&cmds); > batch_add(&cmds, MI_LOAD_REGISTER_IMM(2)); > batch_add(&cmds, i915_mmio_reg_offset(CACHE_MODE_0_GEN7)); > - batch_add(&cmds, 0xffff0000); > + batch_add(&cmds, 0xfffb0000); > batch_add(&cmds, i915_mmio_reg_offset(CACHE_MODE_1)); > batch_add(&cmds, 0xffff0000 | PIXEL_SUBSPAN_COLLECT_OPT_DISABLE); > gen7_emit_pipeline_invalidate(&cmds); > > Note the: > https://gitlab.freedesktop.org/drm/intel/-/issues/3081#note_890606 > > Link contains details about the what and why of this change. There's a patch on the list already https://patchwork.freedesktop.org/patch/431109/?series=89502&rev=1 I suppose it needs a s/IVB_GT1/IVB/ to be consistent with the current w/a setup. Other than that it seems correct. But I still don't understand how it fixes rendering corruption. -- Ville Syrjälä Intel _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Intel-gfx] i915 clear-residuals BYT + IVB rendering issue + possible fix 2021-05-12 12:18 ` Ville Syrjälä @ 2021-05-12 12:34 ` Hans de Goede 0 siblings, 0 replies; 4+ messages in thread From: Hans de Goede @ 2021-05-12 12:34 UTC (permalink / raw) To: Ville Syrjälä, Simon Rettberg; +Cc: intel-gfx Hi, On 5/12/21 2:18 PM, Ville Syrjälä wrote: > On Wed, May 12, 2021 at 12:06:23PM +0200, Hans de Goede wrote: >> Hi All, >> >> We (Fedora) received a bug-report about rendering issues >> on BYT and IVB caused by the i915 clear-residuals work >> which landed in 5.10.y : >> >> The Fedora bug: >> https://bugzilla.redhat.com/show_bug.cgi?id=1959581 >> >> Points to these i915 bugs: >> https://gitlab.freedesktop.org/drm/intel/-/issues/3071 >> https://gitlab.freedesktop.org/drm/intel/-/issues/3081#note_890606 >> >> With the second link containing a possible fix which looks promising >> if someone can take a look at this, then that would be great: >> >> diff --git a/drivers/gpu/drm/i915/gt/gen7_renderclear.c b/drivers/gpu/drm/i915/gt/gen7_renderclear.c >> index de575fdb0..054a0f5b8 100644 >> --- a/drivers/gpu/drm/i915/gt/gen7_renderclear.c >> +++ b/drivers/gpu/drm/i915/gt/gen7_renderclear.c >> @@ -397,7 +397,7 @@ static void emit_batch(struct i915_vma * const vma, >> gen7_emit_pipeline_invalidate(&cmds); >> batch_add(&cmds, MI_LOAD_REGISTER_IMM(2)); >> batch_add(&cmds, i915_mmio_reg_offset(CACHE_MODE_0_GEN7)); >> - batch_add(&cmds, 0xffff0000); >> + batch_add(&cmds, 0xfffb0000); >> batch_add(&cmds, i915_mmio_reg_offset(CACHE_MODE_1)); >> batch_add(&cmds, 0xffff0000 | PIXEL_SUBSPAN_COLLECT_OPT_DISABLE); >> gen7_emit_pipeline_invalidate(&cmds); >> >> Note the: >> https://gitlab.freedesktop.org/drm/intel/-/issues/3081#note_890606 >> >> Link contains details about the what and why of this change. > > There's a patch on the list already > https://patchwork.freedesktop.org/patch/431109/?series=89502&rev=1 So that was posted 2 weeks ago; and we (Fedora) have had several bug reports about firefox rendering corruption on BYT + IVB machines, ever since the i915 clear-residuals changes landed in 5.10.y, I took action on this last one since now their seems to be a clear fix. > I suppose it needs a s/IVB_GT1/IVB/ to be consistent with the current > w/a setup. Other than that it seems correct. > > But I still don't understand how it fixes rendering corruption. You mean the remark about how the change should not impact other rendering contexts? I guess it may be global, rcs_engine_wa_init() which does not sound like it is a per context function, but I could very well be wrong, has this: if (IS_IVYBRIDGE(i915)) { /* WaDisableEarlyCull:ivb */ wa_masked_en(wal, _3D_CHICKEN3, _3D_CHICKEN_SF_DISABLE_OBJEND_CULL); if (0) { /* causes HiZ corruption on ivb:gt1 */ /* enable HiZ Raw Stall Optimization */ wa_masked_dis(wal, CACHE_MODE_0_GEN7, HIZ_RAW_STALL_OPT_DISABLE); } ... Notice how the comment explictly says that disabling the HIZ_RAW_STALL_OPT_DISABLE (thus enabling the opt) is known to cause HiZ corruption, so that at least explains why this bit matters. Maybe the bug is such that triggering it from with the clear-residuals context also impacts other contexts? And as I already said this is a regression which has been biting Fedora users for a while now and the fix obviously seems correct given the above comment which I quoted, so can we please get this merged ? Regards, Hans _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 4+ messages in thread
* [Intel-gfx] ✗ Fi.CI.BUILD: failure for i915 clear-residuals BYT + IVB rendering issue + possible fix 2021-05-12 10:06 [Intel-gfx] i915 clear-residuals BYT + IVB rendering issue + possible fix Hans de Goede 2021-05-12 12:18 ` Ville Syrjälä @ 2021-05-12 12:42 ` Patchwork 1 sibling, 0 replies; 4+ messages in thread From: Patchwork @ 2021-05-12 12:42 UTC (permalink / raw) To: Hans de Goede; +Cc: intel-gfx == Series Details == Series: i915 clear-residuals BYT + IVB rendering issue + possible fix URL : https://patchwork.freedesktop.org/series/90062/ State : failure == Summary == Applying: i915 clear-residuals BYT + IVB rendering issue + possible fix error: patch failed: drivers/gpu/drm/i915/gt/gen7_renderclear.c:397 error: drivers/gpu/drm/i915/gt/gen7_renderclear.c: patch does not apply error: Did you hand edit your patch? It does not apply to blobs recorded in its index. hint: Use 'git am --show-current-patch=diff' to see the failed patch Using index info to reconstruct a base tree... Patch failed at 0001 i915 clear-residuals BYT + IVB rendering issue + possible fix When you have resolved this problem, run "git am --continue". If you prefer to skip this patch, run "git am --skip" instead. To restore the original branch and stop patching, run "git am --abort". _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-05-12 12:42 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2021-05-12 10:06 [Intel-gfx] i915 clear-residuals BYT + IVB rendering issue + possible fix Hans de Goede 2021-05-12 12:18 ` Ville Syrjälä 2021-05-12 12:34 ` Hans de Goede 2021-05-12 12:42 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for " Patchwork
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.