[Mesa-dev] [PATCH] st/mesa: remove unneeded pipe_surface_release() in st_render_texture()

Jose Fonseca jfonseca at vmware.com
Tue Jun 23 23:01:42 PDT 2015


On 23/06/15 17:30, Brian Paul wrote:
> This caused us to always free the pipe_surface for the renderbuffer.
> The subsequent call to st_update_renderbuffer_surface() would typically
> just recreate it.  Remove the call to pipe_surface_release() and let
> st_update_renderbuffer_surface() take care of freeing the old surface
> if it needs to be replaced (because of change to mipmap level, etc).
>
> This can save quite a few calls to pipe_context::create_surface() and
> surface_destroy().
> ---
>   src/mesa/state_tracker/st_cb_fbo.c | 2 --
>   1 file changed, 2 deletions(-)
>
> diff --git a/src/mesa/state_tracker/st_cb_fbo.c b/src/mesa/state_tracker/st_cb_fbo.c
> index 0399eef..5707590 100644
> --- a/src/mesa/state_tracker/st_cb_fbo.c
> +++ b/src/mesa/state_tracker/st_cb_fbo.c
> @@ -511,8 +511,6 @@ st_render_texture(struct gl_context *ctx,
>      strb->rtt_layered = att->Layered;
>      pipe_resource_reference(&strb->texture, pt);
>
> -   pipe_surface_release(pipe, &strb->surface);
> -
>      st_update_renderbuffer_surface(st, strb);
>
>      strb->Base.Format = st_pipe_format_to_mesa_format(pt->format);
>

Reviewed-by: Jose Fonseca <jfonseca at vmware.com>


More information about the mesa-dev mailing list