[Mesa-dev] [PATCH] trace: add missing pipe_context::clear_texture()
Ilia Mirkin
imirkin at alum.mit.edu
Sun Feb 7 22:39:19 UTC 2016
On Sun, Feb 7, 2016 at 5:32 PM, Samuel Pitoiset
<samuel.pitoiset at gmail.com> wrote:
> This fixes a crash with bin/arb_clear_texture-base-formats and
> probably some other tests which use clear_texture().
>
> Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
> ---
> src/gallium/drivers/trace/tr_context.c | 30 ++++++++++++++++++++++++++++++
> 1 file changed, 30 insertions(+)
>
> diff --git a/src/gallium/drivers/trace/tr_context.c b/src/gallium/drivers/trace/tr_context.c
> index 2280898..c49e4f2 100644
> --- a/src/gallium/drivers/trace/tr_context.c
> +++ b/src/gallium/drivers/trace/tr_context.c
> @@ -1325,6 +1325,35 @@ trace_context_clear_depth_stencil(struct pipe_context *_pipe,
> }
>
> static inline void
> +trace_context_clear_texture(struct pipe_context *_pipe,
> + struct pipe_resource *_res,
> + unsigned level,
> + const struct pipe_box *box,
> + const void *data)
> +{
> + struct trace_context *tr_ctx = trace_context(_pipe);
> + struct pipe_context *pipe = tr_ctx->pipe;
> + struct trace_resource *tr_res = trace_resource(_res);
> + struct pipe_resource *res = tr_res->resource;
I guess it might be nicer to use trace_resource_unwrap here?
> +
> + trace_dump_call_begin("pipe_context", "clear_texture");
> +
> + trace_dump_arg(ptr, pipe);
> + trace_dump_arg_begin("res");
Is this begin/end thing necessary here?
With the two things above fixed or otherwise addressed, this is
Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>
> + trace_dump_resource_ptr(_res);
> + trace_dump_arg_end();
> + trace_dump_arg(uint, level);
> + trace_dump_arg_begin("box");
> + trace_dump_box(box);
> + trace_dump_arg_end();
> + trace_dump_arg(ptr, data);
> +
> + pipe->clear_texture(pipe, res, level, box, data);
> +
> + trace_dump_call_end();
> +}
> +
> +static inline void
> trace_context_flush(struct pipe_context *_pipe,
> struct pipe_fence_handle **fence,
> unsigned flags)
> @@ -1778,6 +1807,7 @@ trace_context_create(struct trace_screen *tr_scr,
> TR_CTX_INIT(clear);
> TR_CTX_INIT(clear_render_target);
> TR_CTX_INIT(clear_depth_stencil);
> + TR_CTX_INIT(clear_texture);
> TR_CTX_INIT(flush);
> TR_CTX_INIT(generate_mipmap);
> TR_CTX_INIT(texture_barrier);
> --
> 2.6.4
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
More information about the mesa-dev
mailing list