Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzw...@collabora.com>
On Mon, Sep 16, 2019 at 11:36:41AM +0200, Boris Brezillon wrote: > Some BOs are used by batches but never explicitly added to the BO set. > This is currently not a problem because we wait for the execution of > a batch to be finished before releasing a BO, but we will soon relax > this rule. > > Signed-off-by: Boris Brezillon <boris.brezil...@collabora.com> > --- > src/gallium/drivers/panfrost/pan_context.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/src/gallium/drivers/panfrost/pan_context.c > b/src/gallium/drivers/panfrost/pan_context.c > index a063c16ab019..06a12662dd36 100644 > --- a/src/gallium/drivers/panfrost/pan_context.c > +++ b/src/gallium/drivers/panfrost/pan_context.c > @@ -794,11 +794,12 @@ panfrost_map_constant_buffer_gpu( > { > struct pipe_constant_buffer *cb = &buf->cb[index]; > struct panfrost_resource *rsrc = pan_resource(cb->buffer); > + struct panfrost_batch *batch = panfrost_get_batch_for_fbo(ctx); > > if (rsrc) { > + panfrost_batch_add_bo(batch, rsrc->bo); > return rsrc->bo->gpu; > } else if (cb->user_buffer) { > - struct panfrost_batch *batch = > panfrost_get_batch_for_fbo(ctx); > return panfrost_upload_transient(batch, cb->user_buffer, > cb->buffer_size); > } else { > unreachable("No constant buffer"); > @@ -1113,6 +1114,8 @@ panfrost_emit_for_draw(struct panfrost_context *ctx, > bool with_vertex_data) > > struct panfrost_shader_state *ss = > &all->variants[all->active_variant]; > > + panfrost_batch_add_bo(batch, ss->bo); > + > /* Uniforms are implicitly UBO #0 */ > bool has_uniforms = buf->enabled_mask & (1 << 0); > > -- > 2.21.0 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev