Am Freitag, 28. April 2017, 16:53:55 CEST schrieb Dieter Nützel:
> I'm running this, too.
> But alone. 4/4 didn't apply anylonger ;-)
> 
> NO glitches on NI/Turks XT (6670).
> 
> I had tested 'Heaven' and 'Valley' even with the former patch version.
> The 'Heaven' GPU hang (wireframe/tessellation) is OLD, as it stays there
> for ages.
> So:
> 
> Tested-by: Dieter Nützel <die...@nuetzel-hh.de>

Dieter, your card is HD5000/Evergreen, while mine (RS880) is similar to 
HD4200/r600. I'm ok if the patch only gets applied to the everygreen+ 
generations if the glitches for r600 cant get fixed. 

Marc

> 
> Dieter
> 
> Am 28.04.2017 09:57, schrieb Marc Dietrich:
> > Hi Constantine,
> > 
> > 
> > Am Donnerstag, 27. April 2017, 21:04:37 CEST schrieb Constantine
> > 
> > Kharlamov:
> >> Please, could you try this patch. The change is: I'm setting
> >> dirty_zsbuf in
> >> r600_bind_blend_state_internal() as well. It was the difference
> >> between
> >> radeonsi and r600 for CB updates, and my guess is, it might be
> >> relevant to
> >> DB ones as well.
> > 
> > ok, crash is gone and I get 2-3 fps more :-)
> > 
> > But some rendering glitches and:
> > 
> > radeon 0000:01:05.0: r600_cs_track_validate_db:696 htile surface too
> > small
> > 20480 for 262144 (256 256)
> > radeon 0000:01:05.0: r600_packet3_check:1724 invalid cmd stream
> > [drm:radeon_cs_ioctl [radeon]] *ERROR* Invalid command stream !
> > radeon 0000:01:05.0: r600_cs_track_validate_db:696 htile surface too
> > small
> > 20480 for 262144 (256 256)
> > radeon 0000:01:05.0: r600_packet3_check:1724 invalid cmd stream
> > [drm:radeon_cs_ioctl [radeon]] *ERROR* Invalid command stream !
> > radeon 0000:01:05.0: r600_cs_track_validate_db:696 htile surface too
> > small
> > 20480 for 262144 (256 256)
> > radeon 0000:01:05.0: r600_packet3_check:1724 invalid cmd stream
> > [drm:radeon_cs_ioctl [radeon]] *ERROR* Invalid command stream !
> > radeon 0000:01:05.0: r600_cs_track_validate_db:696 htile surface too
> > small
> > 20480 for 262144 (256 256)
> > radeon 0000:01:05.0: r600_packet3_check:1724 invalid cmd stream
> > [drm:radeon_cs_ioctl [radeon]] *ERROR* Invalid command stream !
> > radeon 0000:01:05.0: r600_cs_track_validate_db:696 htile surface too
> > small
> > 20480 for 262144 (256 256)
> > radeon 0000:01:05.0: r600_packet3_check:1724 invalid cmd stream
> > [drm:radeon_cs_ioctl [radeon]] *ERROR* Invalid command stream !
> > radeon 0000:01:05.0: r600_cs_track_validate_db:696 htile surface too
> > small
> > 20480 for 262144 (256 256)
> > radeon 0000:01:05.0: r600_packet3_check:1724 invalid cmd stream
> > [drm:radeon_cs_ioctl [radeon]] *ERROR* Invalid command stream !
> > radeon 0000:01:05.0: r600_cs_track_validate_db:696 htile surface too
> > small
> > 20480 for 262144 (256 256)
> > radeon 0000:01:05.0: r600_packet3_check:1724 invalid cmd stream
> > [drm:radeon_cs_ioctl [radeon]] *ERROR* Invalid command stream !
> > radeon 0000:01:05.0: r600_cs_track_validate_db:696 htile surface too
> > small
> > 20480 for 262144 (256 256)
> > radeon 0000:01:05.0: r600_packet3_check:1724 invalid cmd stream
> > [drm:radeon_cs_ioctl [radeon]] *ERROR* Invalid command stream !
> > radeon 0000:01:05.0: r600_cs_track_validate_db:696 htile surface too
> > small
> > 20480 for 262144 (256 256)
> > radeon 0000:01:05.0: r600_packet3_check:1724 invalid cmd stream
> > [drm:radeon_cs_ioctl [radeon]] *ERROR* Invalid command stream !
> > radeon 0000:01:05.0: r600_cs_track_validate_db:696 htile surface too
> > small
> > 20480 for 262144 (256 256)
> > radeon 0000:01:05.0: r600_packet3_check:1724 invalid cmd stream
> > [drm:radeon_cs_ioctl [radeon]] *ERROR* Invalid command stream !
> > radeon 0000:01:05.0: r600_cs_track_validate_db:696 htile surface too
> > small
> > 20480 for 262144 (256 256)
> > radeon 0000:01:05.0: r600_packet3_check:1724 invalid cmd stream
> > [drm:radeon_cs_ioctl [radeon]] *ERROR* Invalid command stream !
> > radeon 0000:01:05.0: r600_cs_track_validate_db:696 htile surface too
> > small
> > 20480 for 262144 (256 256)
> > radeon 0000:01:05.0: r600_packet3_check:1724 invalid cmd stream
> > [drm:radeon_cs_ioctl [radeon]] *ERROR* Invalid command stream !
> > 
> > 
> > Marc
> > 
> >> ---
> >> 
> >>  src/gallium/drivers/r600/evergreen_state.c   | 76
> >> 
> >> +++++++++++++++------------- src/gallium/drivers/r600/r600_blit.c
> >> 
> >>  1 +
> >>  src/gallium/drivers/r600/r600_hw_context.c   |  1 +
> >>  src/gallium/drivers/r600/r600_pipe.h         |  1 +
> >>  src/gallium/drivers/r600/r600_state.c        | 52 ++++++++++---------
> >>  src/gallium/drivers/r600/r600_state_common.c |  2 +
> >>  6 files changed, 73 insertions(+), 60 deletions(-)
> >> 
> >> diff --git a/src/gallium/drivers/r600/evergreen_state.c
> >> b/src/gallium/drivers/r600/evergreen_state.c index
> >> 19ad504097..7d84e92250
> >> 100644
> >> --- a/src/gallium/drivers/r600/evergreen_state.c
> >> +++ b/src/gallium/drivers/r600/evergreen_state.c
> >> @@ -1426,6 +1426,7 @@ static void
> >> evergreen_set_framebuffer_state(struct
> >> pipe_context *ctx, R600_CONTEXT_FLUSH_AND_INV_DB_META |
> >> 
> >>                     R600_CONTEXT_INV_TEX_CACHE;
> >> 
> >> +  rctx->framebuffer.dirty_zsbuf |= rctx->framebuffer.state.zsbuf !=
> >> state->zsbuf; util_copy_framebuffer_state(&rctx->framebuffer.state,
> >> state);
> >> 
> >>    /* Colorbuffers. */
> >> 
> >> @@ -1746,45 +1747,47 @@ static void
> >> evergreen_emit_framebuffer_state(struct
> >> r600_context *rctx, struct r radeon_set_context_reg(cs,
> >> R_028E50_CB_COLOR8_INFO + (i - 8) * 0x1C, 0);
> >> 
> >>    /* ZS buffer. */
> >> 
> >> -  if (state->zsbuf) {
> >> -          struct r600_surface *zb = (struct r600_surface*)state->zsbuf;
> >> -          unsigned reloc = radeon_add_to_buffer_list(&rctx->b,
> >> -                                                 &rctx->b.gfx,
> >> -                                                 (struct 
> >> r600_resource*)state->zsbuf->texture,
> >> -                                                 RADEON_USAGE_READWRITE,
> >> -                                                 
> >> zb->base.texture->nr_samples > 1 ?
> >> -                                                         
> >> RADEON_PRIO_DEPTH_BUFFER_MSAA :
> >> -                                                         
> >> RADEON_PRIO_DEPTH_BUFFER);
> >> -
> >> -          radeon_set_context_reg(cs, R_028008_DB_DEPTH_VIEW,
> >> zb->db_depth_view);
> >> -
> >> -          radeon_set_context_reg_seq(cs, R_028040_DB_Z_INFO, 8);
> >> -          radeon_emit(cs, zb->db_z_info);         /* R_028040_DB_Z_INFO */
> >> -          radeon_emit(cs, zb->db_stencil_info);   /* 
> >> R_028044_DB_STENCIL_INFO
> >> */
> >> -          radeon_emit(cs, zb->db_depth_base);     /* 
> >> R_028048_DB_Z_READ_BASE */
> >> -          radeon_emit(cs, zb->db_stencil_base);   /*
> >> R_02804C_DB_STENCIL_READ_BASE
> > 
> > */
> > 
> >> -          radeon_emit(cs, zb->db_depth_base);     /* 
> >> R_028050_DB_Z_WRITE_BASE */
> >> -          radeon_emit(cs, zb->db_stencil_base);   /*
> >> R_028054_DB_STENCIL_WRITE_BASE
> >> */ -               radeon_emit(cs, zb->db_depth_size);     /* 
> >> R_028058_DB_DEPTH_SIZE 
*/
> >> -          radeon_emit(cs, zb->db_depth_slice);    /* 
> >> R_02805C_DB_DEPTH_SLICE */
> >> -
> >> -          radeon_emit(cs, PKT3(PKT3_NOP, 0, 0)); /* 
> >> R_028048_DB_Z_READ_BASE
> >> */
> >> -          radeon_emit(cs, reloc);
> >> +  if (rctx->framebuffer.dirty_zsbuf) {
> >> +          if (state->zsbuf) {
> >> +                  struct r600_surface *zb = (struct 
> >> r600_surface*)state->zsbuf;
> >> +                  unsigned reloc = radeon_add_to_buffer_list(&rctx->b,
> >> +                                                             &rctx->b.gfx,
> >> +                                                             (struct 
> >> r600_resource*)state->zsbuf->texture,
> >> +                                                             
> >> RADEON_USAGE_READWRITE,
> >> +                                                             
> >> zb->base.texture->nr_samples > 1 ?
> >> +                                                             
> >> RADEON_PRIO_DEPTH_BUFFER_MSAA :
> >> +                                                             
> >> RADEON_PRIO_DEPTH_BUFFER);
> >> +
> >> +                  radeon_set_context_reg(cs, R_028008_DB_DEPTH_VIEW, zb-
> >> db_depth_view);
> >> +
> >> +                  radeon_set_context_reg_seq(cs, R_028040_DB_Z_INFO, 8);
> >> +                  radeon_emit(cs, zb->db_z_info);         /* 
> >> R_028040_DB_Z_INFO */
> >> +                  radeon_emit(cs, zb->db_stencil_info);   /* 
> >> R_028044_DB_STENCIL_INFO
> >> */
> >> +                  radeon_emit(cs, zb->db_depth_base);     /* 
> >> R_028048_DB_Z_READ_BASE 
*/
> >> +                  radeon_emit(cs, zb->db_stencil_base);   /*
> > 
> > R_02804C_DB_STENCIL_READ_BASE
> > 
> >> */ +                       radeon_emit(cs, zb->db_depth_base);     /* 
R_028050_DB_Z_WRITE_BASE
> > 
> > */
> > 
> >> +                  radeon_emit(cs, zb->db_stencil_base);   /*
> > 
> > R_028054_DB_STENCIL_WRITE_BASE
> > 
> >> */ +                       radeon_emit(cs, zb->db_depth_size);     /* 
R_028058_DB_DEPTH_SIZE
> > 
> > */
> > 
> >> +                  radeon_emit(cs, zb->db_depth_slice);    /* 
> >> R_02805C_DB_DEPTH_SLICE 
*/
> >> +
> >> +                  radeon_emit(cs, PKT3(PKT3_NOP, 0, 0)); /* 
> >> R_028048_DB_Z_READ_BASE
> >> */
> >> +                  radeon_emit(cs, reloc);
> >> 
> >> -          radeon_emit(cs, PKT3(PKT3_NOP, 0, 0)); /*
> >> R_02804C_DB_STENCIL_READ_BASE
> >> */ -               radeon_emit(cs, reloc);
> >> +                  radeon_emit(cs, PKT3(PKT3_NOP, 0, 0)); /*
> > 
> > R_02804C_DB_STENCIL_READ_BASE
> > 
> >> */ +                       radeon_emit(cs, reloc);
> >> 
> >> -          radeon_emit(cs, PKT3(PKT3_NOP, 0, 0)); /* 
> >> R_028050_DB_Z_WRITE_BASE
> >> */
> >> -          radeon_emit(cs, reloc);
> >> +                  radeon_emit(cs, PKT3(PKT3_NOP, 0, 0)); /* 
R_028050_DB_Z_WRITE_BASE
> >> */
> >> +                  radeon_emit(cs, reloc);
> >> 
> >> -          radeon_emit(cs, PKT3(PKT3_NOP, 0, 0)); /*
> >> R_028054_DB_STENCIL_WRITE_BASE
> >> */ -               radeon_emit(cs, reloc);
> >> -  } else if (rctx->screen->b.info.drm_minor >= 18) {
> >> -          /* DRM 2.6.18 allows the INVALID format to disable 
> >> depth/stencil.
> >> -           * Older kernels are out of luck. */
> >> -          radeon_set_context_reg_seq(cs, R_028040_DB_Z_INFO, 2);
> >> -          radeon_emit(cs, S_028040_FORMAT(V_028040_Z_INVALID)); /*
> >> R_028040_DB_Z_INFO */ -            radeon_emit(cs,
> >> S_028044_FORMAT(V_028044_STENCIL_INVALID)); /*
> >> R_028044_DB_STENCIL_INFO */
> >> +                  radeon_emit(cs, PKT3(PKT3_NOP, 0, 0)); /*
> >> R_028054_DB_STENCIL_WRITE_BASE */ +                        radeon_emit(cs, 
> >> reloc);
> >> +          } else if (rctx->screen->b.info.drm_minor >= 18) {
> >> +                  /* DRM 2.6.18 allows the INVALID format to disable 
> >> depth/stencil.
> >> +                   * Older kernels are out of luck. */
> >> +                  radeon_set_context_reg_seq(cs, R_028040_DB_Z_INFO, 2);
> >> +                  radeon_emit(cs, S_028040_FORMAT(V_028040_Z_INVALID)); /*
> >> R_028040_DB_Z_INFO */ +                    radeon_emit(cs,
> >> S_028044_FORMAT(V_028044_STENCIL_INVALID)); /*
> >> R_028044_DB_STENCIL_INFO */
> >> +          }
> >> 
> >>    }
> >>    
> >>    /* Framebuffer dimensions. */
> >> 
> >> @@ -1806,6 +1809,7 @@ static void
> >> evergreen_emit_framebuffer_state(struct
> >> r600_context *rctx, struct r cayman_emit_msaa_config(cs,
> >> rctx->framebuffer.nr_samples,
> >> 
> >>                                    rctx->ps_iter_samples, 0, 
> >> sc_mode_cntl_1);
> >>    
> >>    }
> >> 
> >> +  rctx->framebuffer.dirty_zsbuf = false;
> >> 
> >>  }
> >>  
> >>  static void evergreen_emit_polygon_offset(struct r600_context *rctx,
> >> 
> >> struct
> >> r600_atom *a) diff --git a/src/gallium/drivers/r600/r600_blit.c
> >> b/src/gallium/drivers/r600/r600_blit.c index c52492e8c2..de87ed8650
> >> 100644
> >> --- a/src/gallium/drivers/r600/r600_blit.c
> >> +++ b/src/gallium/drivers/r600/r600_blit.c
> >> @@ -452,6 +452,7 @@ static void r600_clear(struct pipe_context *ctx,
> >> unsigned buffers, r600_mark_atom_dirty(rctx, &rctx->db_state.atom);
> >> 
> >>                    }
> >>                    rctx->db_misc_state.htile_clear = true;
> >> 
> >> +                  rctx->framebuffer.dirty_zsbuf = true;
> >> 
> >>                    r600_mark_atom_dirty(rctx, &rctx->db_misc_state.atom);
> >>            
> >>            }
> >>    
> >>    }
> >> 
> >> diff --git a/src/gallium/drivers/r600/r600_hw_context.c
> >> b/src/gallium/drivers/r600/r600_hw_context.c index
> >> 4511ce0c01..c85e346307
> >> 100644
> >> --- a/src/gallium/drivers/r600/r600_hw_context.c
> >> +++ b/src/gallium/drivers/r600/r600_hw_context.c
> >> @@ -374,6 +374,7 @@ void r600_begin_new_cs(struct r600_context *ctx)
> >> 
> >>    assert(!ctx->b.gfx.cs->prev_dw);
> >>    ctx->b.initial_gfx_cs_size = ctx->b.gfx.cs->current.cdw;
> >> 
> >> +  ctx->framebuffer.dirty_zsbuf = true;
> >> 
> >>  }
> >>  
> >>  void r600_emit_pfp_sync_me(struct r600_context *rctx)
> >> 
> >> diff --git a/src/gallium/drivers/r600/r600_pipe.h
> >> b/src/gallium/drivers/r600/r600_pipe.h index e1715e8628..aeba1f2635
> >> 100644
> >> --- a/src/gallium/drivers/r600/r600_pipe.h
> >> +++ b/src/gallium/drivers/r600/r600_pipe.h
> >> @@ -190,6 +190,7 @@ struct r600_framebuffer {
> >> 
> >>    bool is_msaa_resolve;
> >>    bool dual_src_blend;
> >>    bool do_update_surf_dirtiness;
> >> 
> >> +  bool dirty_zsbuf;
> >> 
> >>  };
> >>  
> >>  struct r600_sample_mask {
> >> 
> >> diff --git a/src/gallium/drivers/r600/r600_state.c
> >> b/src/gallium/drivers/r600/r600_state.c index fc93eb02ad..a80156bab2
> >> 100644
> >> --- a/src/gallium/drivers/r600/r600_state.c
> >> +++ b/src/gallium/drivers/r600/r600_state.c
> >> @@ -1096,6 +1096,7 @@ static void r600_set_framebuffer_state(struct
> >> pipe_context *ctx, /* Set the new state. */
> >> 
> >>    util_copy_framebuffer_state(&rctx->framebuffer.state, state);
> >> 
> >> +  rctx->framebuffer.dirty_zsbuf |= rctx->framebuffer.state.zsbuf !=
> >> state->zsbuf; rctx->framebuffer.export_16bpc = state->nr_cbufs != 0;
> >> 
> >>    rctx->framebuffer.cb0_is_integer = state->nr_cbufs &&
> >> 
> >> state->cbufs[0] &&
> >> 
> >>                           
> >> util_format_is_pure_integer(state->cbufs[0]->format);
> >> 
> >> @@ -1430,33 +1431,35 @@ static void r600_emit_framebuffer_state(struct
> >> r600_context *rctx, struct r600_a }
> >> 
> >>    /* Zbuffer. */
> >> 
> >> -  if (state->zsbuf) {
> >> -          struct r600_surface *surf = (struct r600_surface*)state->zsbuf;
> >> -          unsigned reloc = radeon_add_to_buffer_list(&rctx->b,
> >> -                                                 &rctx->b.gfx,
> >> -                                                 (struct 
> >> r600_resource*)state->zsbuf->texture,
> >> -                                                 RADEON_USAGE_READWRITE,
> >> -                                                 
> >> surf->base.texture->nr_samples > 1 ?
> >> -                                                         
> >> RADEON_PRIO_DEPTH_BUFFER_MSAA :
> >> -                                                         
> >> RADEON_PRIO_DEPTH_BUFFER);
> >> -
> >> -          radeon_set_context_reg_seq(cs, R_028000_DB_DEPTH_SIZE, 2);
> >> -          radeon_emit(cs, surf->db_depth_size); /* R_028000_DB_DEPTH_SIZE 
> >> */
> >> -          radeon_emit(cs, surf->db_depth_view); /* R_028004_DB_DEPTH_VIEW 
> >> */
> >> -          radeon_set_context_reg_seq(cs, R_02800C_DB_DEPTH_BASE, 2);
> >> -          radeon_emit(cs, surf->db_depth_base); /* R_02800C_DB_DEPTH_BASE 
> >> */
> >> -          radeon_emit(cs, surf->db_depth_info); /* R_028010_DB_DEPTH_INFO 
> >> */
> >> +  if (rctx->framebuffer.dirty_zsbuf) {
> >> +          if (state->zsbuf) {
> >> +                  struct r600_surface *surf = (struct 
> >> r600_surface*)state->zsbuf;
> >> +                  unsigned reloc = radeon_add_to_buffer_list(&rctx->b,
> >> +                                                             &rctx->b.gfx,
> >> +                                                             (struct 
> >> r600_resource*)state->zsbuf->texture,
> >> +                                                             
> >> RADEON_USAGE_READWRITE,
> >> +                                                             
> >> surf->base.texture->nr_samples > 1 ?
> >> +                                                             
> >> RADEON_PRIO_DEPTH_BUFFER_MSAA :
> >> +                                                             
> >> RADEON_PRIO_DEPTH_BUFFER);
> >> +
> >> +                  radeon_set_context_reg_seq(cs, R_028000_DB_DEPTH_SIZE, 
> >> 2);
> >> +                  radeon_emit(cs, surf->db_depth_size); /* 
> >> R_028000_DB_DEPTH_SIZE 
*/
> >> +                  radeon_emit(cs, surf->db_depth_view); /* 
> >> R_028004_DB_DEPTH_VIEW 
*/
> >> +                  radeon_set_context_reg_seq(cs, R_02800C_DB_DEPTH_BASE, 
> >> 2);
> >> +                  radeon_emit(cs, surf->db_depth_base); /* 
> >> R_02800C_DB_DEPTH_BASE 
*/
> >> +                  radeon_emit(cs, surf->db_depth_info); /* 
> >> R_028010_DB_DEPTH_INFO 
*/
> >> 
> >> -          radeon_emit(cs, PKT3(PKT3_NOP, 0, 0));
> >> -          radeon_emit(cs, reloc);
> >> +                  radeon_emit(cs, PKT3(PKT3_NOP, 0, 0));
> >> +                  radeon_emit(cs, reloc);
> >> 
> >> -          radeon_set_context_reg(cs, R_028D34_DB_PREFETCH_LIMIT,
> >> surf->db_prefetch_limit); +                        
> >> radeon_set_context_reg(cs,
> >> R_028D34_DB_PREFETCH_LIMIT, surf->db_prefetch_limit);
> >> 
> >> -          sbu |= SURFACE_BASE_UPDATE_DEPTH;
> >> -  } else if (rctx->screen->b.info.drm_minor >= 18) {
> >> -          /* DRM 2.6.18 allows the INVALID format to disable 
> >> depth/stencil.
> >> -           * Older kernels are out of luck. */
> >> -          radeon_set_context_reg(cs, R_028010_DB_DEPTH_INFO,
> >> S_028010_FORMAT(V_028010_DEPTH_INVALID)); +                        sbu |=
> >> SURFACE_BASE_UPDATE_DEPTH;
> >> +          } else if (rctx->screen->b.info.drm_minor >= 18) {
> >> +                  /* DRM 2.6.18 allows the INVALID format to disable 
> >> depth/stencil.
> >> +                   * Older kernels are out of luck. */
> >> +                  radeon_set_context_reg(cs, R_028010_DB_DEPTH_INFO,
> >> S_028010_FORMAT(V_028010_DEPTH_INVALID)); +                }
> >> 
> >>    }
> >>    
> >>    /* SURFACE_BASE_UPDATE */
> >> 
> >> @@ -1484,6 +1487,7 @@ static void r600_emit_framebuffer_state(struct
> >> r600_context *rctx, struct r600_a }
> >> 
> >>    r600_emit_msaa_state(rctx, rctx->framebuffer.nr_samples);
> >> 
> >> +  rctx->framebuffer.dirty_zsbuf = false;
> >> 
> >>  }
> >>  
> >>  static void r600_set_min_samples(struct pipe_context *ctx, unsigned
> >> 
> >> min_samples) diff --git a/src/gallium/drivers/r600/r600_state_common.c
> >> b/src/gallium/drivers/r600/r600_state_common.c index
> >> 7b52be36cd..78d2cab705
> >> 100644
> >> --- a/src/gallium/drivers/r600/r600_state_common.c
> >> +++ b/src/gallium/drivers/r600/r600_state_common.c
> >> @@ -187,6 +187,7 @@ static void r600_bind_blend_state_internal(struct
> >> r600_context *rctx, }
> >> 
> >>    if (update_cb) {
> >>    
> >>            r600_mark_atom_dirty(rctx, &rctx->cb_misc_state.atom);
> >> 
> >> +          rctx->framebuffer.dirty_zsbuf = true;
> >> 
> >>    }
> >>    if (rctx->framebuffer.dual_src_blend != blend->dual_src_blend) {
> >>    
> >>            rctx->framebuffer.dual_src_blend = blend->dual_src_blend;
> >> 
> >> @@ -1733,6 +1734,7 @@ static void r600_draw_vbo(struct pipe_context
> >> *ctx,
> >> const struct pipe_draw_info if (unlikely(dirty_tex_counter !=
> >> rctx->b.last_dirty_tex_counter)) { rctx->b.last_dirty_tex_counter =
> >> dirty_tex_counter;
> >> 
> >>            r600_mark_atom_dirty(rctx, &rctx->framebuffer.atom);
> >> 
> >> +          rctx->framebuffer.dirty_zsbuf = true;
> >> 
> >>            rctx->framebuffer.do_update_surf_dirtiness = true;
> >>    
> >>    }
> > 
> > _______________________________________________
> > mesa-dev mailing list
> > mesa-dev@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Attachment: signature.asc
Description: This is a digitally signed message part.

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

Reply via email to