Quoting Marek Olšák (2018-06-18 16:33:08) > From: Marek Olšák <marek.ol...@amd.com> > > Some fields shouldn't be initialized, like framebuffers_bound and other stats. > It's hopefully complete now. > > Cc: 18.1 <mesa-sta...@lists.freedesktop.org> > --- > src/gallium/drivers/radeonsi/si_texture.c | 31 ++++++++++++++++++----- > 1 file changed, 25 insertions(+), 6 deletions(-) > > diff --git a/src/gallium/drivers/radeonsi/si_texture.c > b/src/gallium/drivers/radeonsi/si_texture.c > index 2103134156d..e1afe71a3c7 100644 > --- a/src/gallium/drivers/radeonsi/si_texture.c > +++ b/src/gallium/drivers/radeonsi/si_texture.c > @@ -552,36 +552,55 @@ static void si_reallocate_texture_inplace(struct > si_context *sctx, > /* Replace the structure fields of rtex. */ > rtex->buffer.b.b.bind = templ.bind; > pb_reference(&rtex->buffer.buf, new_tex->buffer.buf); > rtex->buffer.gpu_address = new_tex->buffer.gpu_address; > rtex->buffer.vram_usage = new_tex->buffer.vram_usage; > rtex->buffer.gart_usage = new_tex->buffer.gart_usage; > rtex->buffer.bo_size = new_tex->buffer.bo_size; > rtex->buffer.bo_alignment = new_tex->buffer.bo_alignment; > rtex->buffer.domains = new_tex->buffer.domains; > rtex->buffer.flags = new_tex->buffer.flags; > - rtex->size = new_tex->size; > - rtex->db_render_format = new_tex->db_render_format; > - rtex->db_compatible = new_tex->db_compatible; > - rtex->can_sample_z = new_tex->can_sample_z; > - rtex->can_sample_s = new_tex->can_sample_s; > + > rtex->surface = new_tex->surface; > + rtex->size = new_tex->size; > + r600_texture_reference(&rtex->flushed_depth_texture, > + new_tex->flushed_depth_texture); > + > rtex->fmask_offset = new_tex->fmask_offset; > rtex->cmask = new_tex->cmask; > + r600_resource_reference(&rtex->cmask_buffer, new_tex->cmask_buffer); > + rtex->dcc_offset = new_tex->dcc_offset; > rtex->cb_color_info = new_tex->cb_color_info; > + memcpy(rtex->color_clear_value, new_tex->color_clear_value, > + sizeof(rtex->color_clear_value)); > rtex->last_msaa_resolve_target_micro_mode = > new_tex->last_msaa_resolve_target_micro_mode; > + > rtex->htile_offset = new_tex->htile_offset; > + rtex->depth_clear_value = new_tex->depth_clear_value; > + rtex->dirty_level_mask = new_tex->dirty_level_mask; > + rtex->stencil_dirty_level_mask = new_tex->stencil_dirty_level_mask; > + rtex->db_render_format = new_tex->db_render_format; > + rtex->stencil_clear_value = new_tex->stencil_clear_value; > rtex->tc_compatible_htile = new_tex->tc_compatible_htile; > rtex->depth_cleared = new_tex->depth_cleared; > rtex->stencil_cleared = new_tex->stencil_cleared; > + rtex->upgraded_depth = new_tex->upgraded_depth; > + rtex->db_compatible = new_tex->db_compatible; > + rtex->can_sample_z = new_tex->can_sample_z; > + rtex->can_sample_s = new_tex->can_sample_s; > + > + rtex->separate_dcc_dirty = new_tex->separate_dcc_dirty; > rtex->dcc_gather_statistics = new_tex->dcc_gather_statistics; > - rtex->framebuffers_bound = new_tex->framebuffers_bound; > + r600_resource_reference(&rtex->dcc_separate_buffer, > + new_tex->dcc_separate_buffer); > + r600_resource_reference(&rtex->last_dcc_separate_buffer, > + new_tex->last_dcc_separate_buffer); > > if (new_bind_flag == PIPE_BIND_LINEAR) { > assert(!rtex->htile_offset); > assert(!rtex->cmask.size); > assert(!rtex->surface.fmask_size); > assert(!rtex->dcc_offset); > assert(!rtex->is_depth); > } > > r600_texture_reference(&new_tex, NULL); > -- > 2.17.1 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Hi Marek, This doesn't apply cleanly to 18.1. It relies on at least 1ba87f4438069964af6548f4fa05386be999f4de, which is massive and also doesn't apply cleanly. What would you like to do? Dylan
signature.asc
Description: signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev