[Mesa-dev] [PATCH 2/2] st/mesa: Invalidate the gallium array atom only if needed.

Mathias Fröhlich Mathias.Froehlich at gmx.net
Mon Mar 4 17:20:13 UTC 2019


Hi,

On Friday, 1 March 2019 16:50:13 CET Brian Paul wrote:
> The series looks OK to me.
> 
> Reviewed-by: Brian Paul <brianp at vmware.com>

Thanks!
Pushed!
Mathias

> 
> On 02/28/2019 11:18 PM, Mathias.Froehlich at gmx.net wrote:
> > From: Mathias Fröhlich <mathias.froehlich at web.de>
> > 
> > Now that the buffer object usage history tracks if it is
> > being used as vertex buffer object, we can restrict setting
> > the ST_NEW_VERTEX_ARRAYS bit to dirty on glBufferData calls to
> > buffers that are potentially used as vertex buffer object.
> > Also put a note that the same could be done for index arrays
> > used in indexed draws.
> > 
> > Signed-off-by: Mathias Fröhlich <Mathias.Froehlich at web.de>
> > ---
> >   src/mesa/state_tracker/st_cb_bufferobjects.c | 6 ++++--
> >   1 file changed, 4 insertions(+), 2 deletions(-)
> > 
> > diff --git a/src/mesa/state_tracker/st_cb_bufferobjects.c b/src/mesa/state_tracker/st_cb_bufferobjects.c
> > index 5ebe94f4545..b05f2516980 100644
> > --- a/src/mesa/state_tracker/st_cb_bufferobjects.c
> > +++ b/src/mesa/state_tracker/st_cb_bufferobjects.c
> > @@ -357,8 +357,10 @@ bufferobj_data(struct gl_context *ctx,
> >      /* The current buffer may be bound, so we have to revalidate all atoms that
> >       * might be using it.
> >       */
> > -   /* TODO: Add arrays to usage history */
> > -   ctx->NewDriverState |= ST_NEW_VERTEX_ARRAYS;
> > +   if (st_obj->Base.UsageHistory & USAGE_ARRAY_BUFFER)
> > +      ctx->NewDriverState |= ST_NEW_VERTEX_ARRAYS;
> > +   /* if (st_obj->Base.UsageHistory & USAGE_ELEMENT_ARRAY_BUFFER) */
> > +   /*    ctx->NewDriverState |= TODO: Handle indices as gallium state; */
> >      if (st_obj->Base.UsageHistory & USAGE_UNIFORM_BUFFER)
> >         ctx->NewDriverState |= ST_NEW_UNIFORM_BUFFER;
> >      if (st_obj->Base.UsageHistory & USAGE_SHADER_STORAGE_BUFFER)
> > 
> 
> 






More information about the mesa-dev mailing list