u_trace: pass tracepoint flags to the read_timestamp callback

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Michael Cheng <michael.cheng@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33684>
This commit is contained in:
Lionel Landwerlin 2025-02-23 14:15:38 +02:00 committed by Marge Bot
parent 43c3270c26
commit 31c5c386d1
10 changed files with 14 additions and 9 deletions

View file

@ -1947,7 +1947,8 @@ tu_trace_record_ts(struct u_trace *ut, void *cs, void *timestamps,
static uint64_t
tu_trace_read_ts(struct u_trace_context *utctx,
void *timestamps, uint64_t offset_B, void *flush_data)
void *timestamps, uint64_t offset_B,
uint32_t flags, void *flush_data)
{
struct tu_device *device =
container_of(utctx, struct tu_device, trace_context);

View file

@ -499,7 +499,8 @@ fd_trace_record_ts(struct u_trace *ut, void *cs, void *timestamps,
static uint64_t
fd_trace_read_ts(struct u_trace_context *utctx,
void *timestamps, uint64_t offset_B, void *flush_data)
void *timestamps, uint64_t offset_B,
uint32_t flags, void *flush_data)
{
struct fd_context *ctx =
container_of(utctx, struct fd_context, trace_context);

View file

@ -131,7 +131,8 @@ iris_utrace_record_ts(struct u_trace *trace, void *cs,
static uint64_t
iris_utrace_read_ts(struct u_trace_context *utctx,
void *timestamps, uint64_t offset_B, void *flush_data)
void *timestamps, uint64_t offset_B,
uint32_t flags, void *flush_data)
{
struct iris_context *ice =
container_of(utctx, struct iris_context, ds.trace_context);

View file

@ -32,7 +32,7 @@ static void si_utrace_record_ts(struct u_trace *trace, void *cs, void *timestamp
}
static uint64_t si_utrace_read_ts(struct u_trace_context *utctx, void *timestamps,
uint64_t offset_B, void *flush_data)
uint64_t offset_B, uint32_t flags, void *flush_data)
{
struct si_context *ctx = container_of(utctx, struct si_context, ds.trace_context);
struct pipe_resource *buffer = timestamps;

View file

@ -398,7 +398,7 @@ anv_utrace_record_ts(struct u_trace *ut, void *cs,
static uint64_t
anv_utrace_read_ts(struct u_trace_context *utctx,
void *timestamps, uint64_t offset_B,
void *flush_data)
uint32_t flags, void *flush_data)
{
struct anv_device *device =
container_of(utctx, struct anv_device, ds.trace_context);

View file

@ -245,7 +245,7 @@ anv_utrace_record_ts(struct u_trace *ut, void *cs,
static uint64_t
anv_utrace_read_ts(struct u_trace_context *utctx,
void *timestamps, uint64_t offset_B,
void *flush_data)
uint32_t flags, void *flush_data)
{
struct anv_device *device =
container_of(utctx, struct anv_device, ds.trace_context);

View file

@ -41,7 +41,7 @@ panvk_utrace_delete_buffer(struct u_trace_context *utctx, void *buffer)
uint64_t
panvk_utrace_read_ts(struct u_trace_context *utctx, void *timestamps,
uint64_t offset_B, void *flush_data)
uint64_t offset_B, uint32_t flags, void *flush_data)
{
struct panvk_device *dev = to_dev(utctx);
const struct panvk_physical_device *pdev =

View file

@ -29,7 +29,7 @@ void *panvk_utrace_create_buffer(struct u_trace_context *utctx,
void panvk_utrace_delete_buffer(struct u_trace_context *utctx, void *buffer);
uint64_t panvk_utrace_read_ts(struct u_trace_context *utctx, void *timestamps,
uint64_t offset_B, void *flush_data);
uint64_t offset_B, uint32_t flags, void *flush_data);
void panvk_utrace_delete_flush_data(struct u_trace_context *utctx,
void *flush_data);

View file

@ -686,6 +686,7 @@ process_chunk(void *job, void *gdata, int thread_index)
uint64_t ns = utctx->read_timestamp(utctx,
chunk->timestamps,
utctx->timestamp_size_bytes * idx,
evt->tp->flags,
chunk->flush_data);
int32_t delta;

View file

@ -107,7 +107,7 @@ typedef void (*u_trace_delete_buffer)(struct u_trace_context *utctx,
void *buffer);
/**
* Driver provided callback to emit commands into the soecified command
* Driver provided callback to emit commands into the specified command
* stream to capture a 64b timestamp into the specified timestamps buffer,
* at the specified index.
*
@ -160,6 +160,7 @@ typedef const void *(*u_trace_get_data)(struct u_trace_context *utctx,
typedef uint64_t (*u_trace_read_ts)(struct u_trace_context *utctx,
void *timestamps,
uint64_t offset_B,
uint32_t flags,
void *flush_data);
/**