[Mesa-dev] [PATCH] i965: Drop PIPE_CONTROL_NO_WRITE from various calls.

Lionel Landwerlin lionel.g.landwerlin at intel.com
Thu Mar 22 18:32:31 UTC 2018


Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>

On 22/03/18 18:22, Kenneth Graunke wrote:
> This is just zero - passing nothing already gives us a post-sync
> operation of "nothing".
> ---
>   src/mesa/drivers/dri/i965/brw_misc_state.c   | 4 +---
>   src/mesa/drivers/dri/i965/brw_pipe_control.c | 2 +-
>   src/mesa/drivers/dri/i965/brw_program.c      | 4 +---
>   src/mesa/drivers/dri/i965/gen7_l3_state.c    | 5 +----
>   4 files changed, 4 insertions(+), 11 deletions(-)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_misc_state.c b/src/mesa/drivers/dri/i965/brw_misc_state.c
> index 29d74876c27..05517ebf587 100644
> --- a/src/mesa/drivers/dri/i965/brw_misc_state.c
> +++ b/src/mesa/drivers/dri/i965/brw_misc_state.c
> @@ -462,15 +462,13 @@ brw_emit_select_pipeline(struct brw_context *brw, enum brw_pipeline pipeline)
>                                     PIPE_CONTROL_RENDER_TARGET_FLUSH |
>                                     PIPE_CONTROL_DEPTH_CACHE_FLUSH |
>                                     dc_flush |
> -                                  PIPE_CONTROL_NO_WRITE |
>                                     PIPE_CONTROL_CS_STALL);
>   
>         brw_emit_pipe_control_flush(brw,
>                                     PIPE_CONTROL_TEXTURE_CACHE_INVALIDATE |
>                                     PIPE_CONTROL_CONST_CACHE_INVALIDATE |
>                                     PIPE_CONTROL_STATE_CACHE_INVALIDATE |
> -                                  PIPE_CONTROL_INSTRUCTION_INVALIDATE |
> -                                  PIPE_CONTROL_NO_WRITE);
> +                                  PIPE_CONTROL_INSTRUCTION_INVALIDATE);
>   
>      } else {
>         /* From "BXML » GT » MI » vol1a GPU Overview » [Instruction]
> diff --git a/src/mesa/drivers/dri/i965/brw_pipe_control.c b/src/mesa/drivers/dri/i965/brw_pipe_control.c
> index 2350a6148f3..71f79b18474 100644
> --- a/src/mesa/drivers/dri/i965/brw_pipe_control.c
> +++ b/src/mesa/drivers/dri/i965/brw_pipe_control.c
> @@ -547,7 +547,7 @@ brw_emit_mi_flush(struct brw_context *brw)
>            OUT_BATCH(0);
>         ADVANCE_BATCH();
>      } else {
> -      int flags = PIPE_CONTROL_NO_WRITE | PIPE_CONTROL_RENDER_TARGET_FLUSH;
> +      int flags = PIPE_CONTROL_RENDER_TARGET_FLUSH;
>         if (devinfo->gen >= 6) {
>            flags |= PIPE_CONTROL_INSTRUCTION_INVALIDATE |
>                     PIPE_CONTROL_CONST_CACHE_INVALIDATE |
> diff --git a/src/mesa/drivers/dri/i965/brw_program.c b/src/mesa/drivers/dri/i965/brw_program.c
> index 4ba46a3c826..23743639dc8 100644
> --- a/src/mesa/drivers/dri/i965/brw_program.c
> +++ b/src/mesa/drivers/dri/i965/brw_program.c
> @@ -277,9 +277,7 @@ brw_memory_barrier(struct gl_context *ctx, GLbitfield barriers)
>   {
>      struct brw_context *brw = brw_context(ctx);
>      const struct gen_device_info *devinfo = &brw->screen->devinfo;
> -   unsigned bits = (PIPE_CONTROL_DATA_CACHE_FLUSH |
> -                    PIPE_CONTROL_NO_WRITE |
> -                    PIPE_CONTROL_CS_STALL);
> +   unsigned bits = PIPE_CONTROL_DATA_CACHE_FLUSH | PIPE_CONTROL_CS_STALL;
>      assert(devinfo->gen >= 7 && devinfo->gen <= 11);
>   
>      if (barriers & (GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT |
> diff --git a/src/mesa/drivers/dri/i965/gen7_l3_state.c b/src/mesa/drivers/dri/i965/gen7_l3_state.c
> index 8c8f4169e7e..8c6c4c47481 100644
> --- a/src/mesa/drivers/dri/i965/gen7_l3_state.c
> +++ b/src/mesa/drivers/dri/i965/gen7_l3_state.c
> @@ -86,7 +86,6 @@ setup_l3_config(struct brw_context *brw, const struct gen_l3_config *cfg)
>       */
>      brw_emit_pipe_control_flush(brw,
>                                  PIPE_CONTROL_DATA_CACHE_FLUSH |
> -                               PIPE_CONTROL_NO_WRITE |
>                                  PIPE_CONTROL_CS_STALL);
>   
>      /* ...followed by a second pipelined PIPE_CONTROL that initiates
> @@ -107,15 +106,13 @@ setup_l3_config(struct brw_context *brw, const struct gen_l3_config *cfg)
>                                  PIPE_CONTROL_TEXTURE_CACHE_INVALIDATE |
>                                  PIPE_CONTROL_CONST_CACHE_INVALIDATE |
>                                  PIPE_CONTROL_INSTRUCTION_INVALIDATE |
> -                               PIPE_CONTROL_STATE_CACHE_INVALIDATE |
> -                               PIPE_CONTROL_NO_WRITE);
> +                               PIPE_CONTROL_STATE_CACHE_INVALIDATE);
>   
>      /* Now send a third stalling flush to make sure that invalidation is
>       * complete when the L3 configuration registers are modified.
>       */
>      brw_emit_pipe_control_flush(brw,
>                                  PIPE_CONTROL_DATA_CACHE_FLUSH |
> -                               PIPE_CONTROL_NO_WRITE |
>                                  PIPE_CONTROL_CS_STALL);
>   
>      if (devinfo->gen >= 8) {




More information about the mesa-dev mailing list