mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-03-07 03:20:28 +01:00
anv/utrace: avoid memseting timestamp buffers by using tracepoint flags
Using the flag we can deduce how the timestamp was written and avoid guessing when reading back. Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/13806 Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37111>
This commit is contained in:
parent
f262865a90
commit
0e198f796c
1 changed files with 4 additions and 11 deletions
|
|
@ -307,13 +307,6 @@ anv_utrace_create_buffer(struct u_trace_context *utctx, uint64_t size_B)
|
|||
&bo);
|
||||
assert(result == VK_SUCCESS);
|
||||
|
||||
memset(bo->map, 0, bo->size);
|
||||
#ifdef SUPPORT_INTEL_INTEGRATED_GPUS
|
||||
if (device->physical->memory.need_flush &&
|
||||
anv_bo_needs_host_cache_flush(bo->alloc_flags))
|
||||
intel_flush_range(bo->map, bo->size);
|
||||
#endif
|
||||
|
||||
return bo;
|
||||
}
|
||||
|
||||
|
|
@ -422,10 +415,10 @@ anv_utrace_read_ts(struct u_trace_context *utctx,
|
|||
|
||||
uint64_t timestamp;
|
||||
|
||||
/* Detect a 16/32 bytes timestamp write */
|
||||
if (ts->gfx20_postsync_data[1] != 0 ||
|
||||
ts->gfx20_postsync_data[2] != 0 ||
|
||||
ts->gfx20_postsync_data[3] != 0) {
|
||||
/* Gfx12.5+ use the COMPUTE_WALKER timestamp write which has a different
|
||||
* format than a dummy 64bit timestamp.
|
||||
*/
|
||||
if (device->info->verx10 >= 125 && (flags & INTEL_DS_TRACEPOINT_FLAG_END_CS)) {
|
||||
if (device->info->ver >= 20) {
|
||||
timestamp = ts->gfx20_postsync_data[3];
|
||||
} else {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue