trace: add invalidate_resource callback
authorIlia Mirkin <imirkin@alum.mit.edu>
Tue, 11 Oct 2016 03:17:20 +0000 (23:17 -0400)
committerIlia Mirkin <imirkin@alum.mit.edu>
Wed, 12 Oct 2016 00:47:54 +0000 (20:47 -0400)
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Edward O'Callaghan <funfunctor@folklore1984.net>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
src/gallium/drivers/trace/tr_context.c

index e833fb2de470cbdfe5f17a1346e76405493f8d44..8423bb28c014a7a2b96d46ae4d8bb7ab4b55acd6 100644 (file)
@@ -1635,6 +1635,26 @@ trace_context_texture_subdata(struct pipe_context *_context,
                             data, stride, layer_stride);
 }
 
+static void
+trace_context_invalidate_resource(struct pipe_context *_context,
+                                  struct pipe_resource *_resource)
+{
+   struct trace_context *tr_context = trace_context(_context);
+   struct trace_resource *tr_res = trace_resource(_resource);
+   struct pipe_context *context = tr_context->pipe;
+   struct pipe_resource *resource = tr_res->resource;
+
+   assert(resource->screen == context->screen);
+
+   trace_dump_call_begin("pipe_context", "invalidate_resource");
+
+   trace_dump_arg(ptr, context);
+   trace_dump_arg(ptr, resource);
+
+   trace_dump_call_end();
+
+   context->invalidate_resource(context, resource);
+}
 
 static void
 trace_context_render_condition(struct pipe_context *_context,
@@ -1917,6 +1937,7 @@ trace_context_create(struct trace_screen *tr_scr,
    TR_CTX_INIT(transfer_flush_region);
    TR_CTX_INIT(buffer_subdata);
    TR_CTX_INIT(texture_subdata);
+   TR_CTX_INIT(invalidate_resource);
 
 #undef TR_CTX_INIT