From f1cdaf36df75617645ce315f5c089558c04dea46 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Mon, 7 Feb 2022 14:39:25 -0500 Subject: [PATCH] aux/trace: more screen methods Reviewed-by: Adam Jackson Part-of: --- src/gallium/auxiliary/driver_trace/tr_screen.c | 44 ++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/src/gallium/auxiliary/driver_trace/tr_screen.c b/src/gallium/auxiliary/driver_trace/tr_screen.c index db82f01..6427ff2 100644 --- a/src/gallium/auxiliary/driver_trace/tr_screen.c +++ b/src/gallium/auxiliary/driver_trace/tr_screen.c @@ -529,6 +529,30 @@ trace_screen_allocate_memory(struct pipe_screen *_screen, return result; } +static struct pipe_memory_allocation * +trace_screen_allocate_memory_fd(struct pipe_screen *_screen, + uint64_t size, + int *fd) +{ + struct trace_screen *tr_scr = trace_screen(_screen); + struct pipe_screen *screen = tr_scr->screen; + struct pipe_memory_allocation *result; + + trace_dump_call_begin("pipe_screen", "allocate_memory_fd"); + + trace_dump_arg(ptr, screen); + trace_dump_arg(uint, size); + trace_dump_arg(ptr, fd); + + result = screen->allocate_memory_fd(screen, size, fd); + + trace_dump_ret(ptr, result); + + trace_dump_call_end(); + + return result; +} + static void trace_screen_free_memory(struct pipe_screen *_screen, struct pipe_memory_allocation *pmem) @@ -547,6 +571,24 @@ trace_screen_free_memory(struct pipe_screen *_screen, trace_dump_call_end(); } +static void +trace_screen_free_memory_fd(struct pipe_screen *_screen, + struct pipe_memory_allocation *pmem) +{ + struct trace_screen *tr_scr = trace_screen(_screen); + struct pipe_screen *screen = tr_scr->screen; + + trace_dump_call_begin("pipe_screen", "free_memory_fd"); + + trace_dump_arg(ptr, screen); + trace_dump_arg(ptr, pmem); + + screen->free_memory_fd(screen, pmem); + + + trace_dump_call_end(); +} + static bool trace_screen_resource_bind_backing(struct pipe_screen *_screen, struct pipe_resource *resource, @@ -1244,7 +1286,9 @@ trace_screen_create(struct pipe_screen *screen) tr_scr->base.resource_bind_backing = trace_screen_resource_bind_backing; tr_scr->base.resource_from_handle = trace_screen_resource_from_handle; tr_scr->base.allocate_memory = trace_screen_allocate_memory; + SCR_INIT(allocate_memory_fd); tr_scr->base.free_memory = trace_screen_free_memory; + SCR_INIT(free_memory_fd); tr_scr->base.map_memory = trace_screen_map_memory; tr_scr->base.unmap_memory = trace_screen_unmap_memory; SCR_INIT(query_memory_info); -- 2.7.4