[Mesa-dev] [PATCH 2/2] i965/blorp: Do the gen11 BTI flush

Pohjolainen, Topi topi.pohjolainen at gmail.com
Wed Apr 18 15:08:08 UTC 2018


On Tue, Apr 17, 2018 at 05:53:49PM -0700, Jason Ekstrand wrote:
> On Tue, Apr 17, 2018 at 4:19 PM, Anuj Phogat <anuj.phogat at gmail.com> wrote:
> 
> > For the series:
> > Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>
> >
> > This might explain piglit GPU hangs or failures. I'll do a piglit run with
> > these patches.
> >
> 
> Yeah.  I know it was causing problems in simulation (which is where I found
> it).  Do you want me to wait for you to do piglit runs and get data before
> landing these?

Yeah, sorry, I found that also before traveling to US by code inspection. I
think I mentioned it to Ken but forgot to tell you/send it to the list. It
didn't help me with the piglit failures I was looking and forgot about it.
I'm glad you brought it up, series also:

Reviewed-by: Topi Pohjolainen <topi.pohjolainen at intel.com>

> 
> 
> > Thanks
> > Anuj
> >
> > On Tue, Apr 17, 2018 at 3:10 PM, Jason Ekstrand <jason at jlekstrand.net>
> > wrote:
> >
> >> ---
> >>  src/mesa/drivers/dri/i965/genX_blorp_exec.c | 14 ++++++++++++++
> >>  1 file changed, 14 insertions(+)
> >>
> >> diff --git a/src/mesa/drivers/dri/i965/genX_blorp_exec.c
> >> b/src/mesa/drivers/dri/i965/genX_blorp_exec.c
> >> index 3406a6f..a6cb0e3 100644
> >> --- a/src/mesa/drivers/dri/i965/genX_blorp_exec.c
> >> +++ b/src/mesa/drivers/dri/i965/genX_blorp_exec.c
> >> @@ -241,6 +241,20 @@ genX(blorp_exec)(struct blorp_batch *batch,
> >>     struct gl_context *ctx = &brw->ctx;
> >>     bool check_aperture_failed_once = false;
> >>
> >> +#if GEN_GEN >= 11
> >> +   /* The PIPE_CONTROL command description says:
> >> +    *
> >> +    * "Whenever a Binding Table Index (BTI) used by a Render Taget
> >> Message
> >> +    *  points to a different RENDER_SURFACE_STATE, SW must issue a Render
> >> +    *  Target Cache Flush by enabling this bit. When render target flush
> >> +    *  is set due to new association of BTI, PS Scoreboard Stall bit must
> >> +    *  be set in this packet."
> >> +   */
> >> +   brw_emit_pipe_control_flush(brw,
> >> +                               PIPE_CONTROL_RENDER_TARGET_FLUSH |
> >> +                               PIPE_CONTROL_STALL_AT_SCOREBOARD);
> >> +#endif
> >> +
> >>     /* Flush the sampler and render caches.  We definitely need to flush
> >> the
> >>      * sampler cache so that we get updated contents from the render
> >> cache for
> >>      * the glBlitFramebuffer() source.  Also, we are sometimes warned in
> >> the
> >> --
> >> 2.5.0.400.gff86faf
> >>
> >> _______________________________________________
> >> mesa-dev mailing list
> >> mesa-dev at lists.freedesktop.org
> >> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
> >>
> >
> >

> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev



More information about the mesa-dev mailing list