Hi Marek, On the 10.2 tree struct si_shader lacks the scratch_bo member, while gs_copy_shader is around. Can you let me know if we should drop the scratch_bo unref line or alternatively can you port the commit against 10.2
Thanks Emil On 19/09/14 21:17, Marek Olšák wrote: > From: Marek Olšák <marek.ol...@amd.com> > > Cc: 10.2 10.3 <mesa-sta...@lists.freedesktop.org> > --- > src/gallium/drivers/radeonsi/si_shader.c | 4 ++++ > src/gallium/drivers/radeonsi/si_state.c | 7 ++++--- > 2 files changed, 8 insertions(+), 3 deletions(-) > > diff --git a/src/gallium/drivers/radeonsi/si_shader.c > b/src/gallium/drivers/radeonsi/si_shader.c > index 7aa65c9..94db1dc 100644 > --- a/src/gallium/drivers/radeonsi/si_shader.c > +++ b/src/gallium/drivers/radeonsi/si_shader.c > @@ -2973,5 +2973,9 @@ out: > > void si_shader_destroy(struct pipe_context *ctx, struct si_shader *shader) > { > + if (shader->gs_copy_shader) > + si_shader_destroy(ctx, shader->gs_copy_shader); > + > r600_resource_reference(&shader->bo, NULL); > + r600_resource_reference(&shader->scratch_bo, NULL); > } > diff --git a/src/gallium/drivers/radeonsi/si_state.c > b/src/gallium/drivers/radeonsi/si_state.c > index 2aa9aad..ed90f13 100644 > --- a/src/gallium/drivers/radeonsi/si_state.c > +++ b/src/gallium/drivers/radeonsi/si_state.c > @@ -2403,9 +2403,10 @@ static void si_delete_shader_selector(struct > pipe_context *ctx, > > while (p) { > c = p->next_variant; > - if (sel->type == PIPE_SHADER_GEOMETRY) > + if (sel->type == PIPE_SHADER_GEOMETRY) { > si_pm4_delete_state(sctx, gs, p->pm4); > - else if (sel->type == PIPE_SHADER_FRAGMENT) > + si_pm4_delete_state(sctx, vs, p->gs_copy_shader->pm4); > + } else if (sel->type == PIPE_SHADER_FRAGMENT) > si_pm4_delete_state(sctx, ps, p->pm4); > else if (p->key.vs.as_es) > si_pm4_delete_state(sctx, es, p->pm4); > @@ -2418,7 +2419,7 @@ static void si_delete_shader_selector(struct > pipe_context *ctx, > > free(sel->tokens); > free(sel); > - } > +} > > static void si_delete_vs_shader(struct pipe_context *ctx, void *state) > { > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev