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

2018-04-18 Thread Pohjolainen, Topi
On Tue, Apr 17, 2018 at 05:53:49PM -0700, Jason Ekstrand wrote:
> On Tue, Apr 17, 2018 at 4:19 PM, Anuj Phogat  wrote:
> 
> > For the series:
> > Reviewed-by: Anuj Phogat 
> >
> > 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 

> 
> 
> > Thanks
> > Anuj
> >
> > On Tue, Apr 17, 2018 at 3:10 PM, Jason Ekstrand 
> > 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@lists.freedesktop.org
> >> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
> >>
> >
> >

> ___
> mesa-dev mailing list
> mesa-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


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

2018-04-17 Thread Jason Ekstrand
On Tue, Apr 17, 2018 at 4:19 PM, Anuj Phogat  wrote:

> For the series:
> Reviewed-by: Anuj Phogat 
>
> 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?


> Thanks
> Anuj
>
> On Tue, Apr 17, 2018 at 3:10 PM, Jason Ekstrand 
> 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@lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>>
>
>
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


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

2018-04-17 Thread Anuj Phogat
For the series:
Reviewed-by: Anuj Phogat 

This might explain piglit GPU hangs or failures. I'll do a piglit run with
these patches.
Thanks
Anuj

On Tue, Apr 17, 2018 at 3:10 PM, Jason Ekstrand 
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@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev


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

2018-04-17 Thread Jason Ekstrand
---
 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@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev