mesa/src
Danylo Piliaiev 1989e1e6d8 turnip/perfetto: handle gpu timestamps being non-monotonic
Perfetto requires time in clock snaphots to be monotonic, otherwise
the clock would be excluded.
GPU timestamps start from zero after every suspend-resume cycle
which makes them non-monotonic.

As a solution on msm we check whether GPU was just resumed and
remember previous highest timestamp to then add it to the next
timestamps.

If the functionality to get whether gpu is resumed is unavailable
or doesn't work - we fallback to a check for a discontinuity
in timestamps. For kgsl we always use fallback.

Fixes renderstage timeline disappearing in AGI.

Or you could avoid the issue altogether by preventing GPU from going to
sleep by increasing auto suspend delay e.g.:

  echo 5000 > /sys/devices/platform/soc\@0/3d00000.gpu/power/autosuspend_delay_ms

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14391>
2022-01-27 18:59:43 +00:00
..
amd radv/ci: mark the dEQP fails related to a missing VKCTS 1.3 as expected 2022-01-27 07:55:53 +00:00
android_stub android_stub: update platform headers to include atrace 2021-10-09 00:42:32 +00:00
asahi agx: Lower UBO loads to use per-element indexing 2022-01-24 14:25:18 +00:00
broadcom v3dv: document why we don't expose VK_EXT_scalar_block_layout 2022-01-27 07:34:19 +00:00
compiler nir/lower_locals_to_regs: Do an ad-hoc copy propagate on our generated MOV. 2022-01-25 06:01:13 +00:00
drm-shim drm-shim: Support kernels with >4k pages 2021-08-13 23:33:52 +00:00
egl egl/dri2: short-circuit dri2_make_current when possible 2022-01-17 10:32:01 +00:00
etnaviv ci/llvmpipe,softpipe: Switch piglit testing to piglit-runner. 2022-01-27 04:37:16 +00:00
freedreno turnip/perfetto: handle gpu timestamps being non-monotonic 2022-01-27 18:59:43 +00:00
gallium zink: unify some context casts in zink_create_sampler_view 2022-01-27 13:32:54 +00:00
gbm replace 0 with NULL for NULL pointers 2022-01-10 22:53:32 +00:00
getopt
glx replace 0 with NULL for NULL pointers 2022-01-10 22:53:32 +00:00
gtest gtest: Fix output of array ASSERT/EXPECT macros 2021-11-11 09:53:09 -08:00
hgl
imgui
intel intel/ci: expected failure for 1.3 with older CTS 2022-01-27 16:42:01 +00:00
loader loader: Restore i915g support. 2021-12-09 09:05:23 -08:00
mapi mapi: generate correct dispatch for EXT_draw_instanced 2022-01-03 21:37:34 +00:00
mesa mesa/st: refactor program translation into one file. 2022-01-26 00:42:59 +00:00
microsoft microsoft/compiler: Handle clip/cull distance as an input to tess shaders 2022-01-26 01:31:35 +00:00
nouveau
panfrost panvk: Fix pointer corruption in panvk_add_wait_event_syncobjs 2022-01-27 14:16:17 +00:00
tool pps: increase intel.cfg buffer size 2022-01-14 20:17:44 +00:00
util util/fossilize_db: Fix double free in error handling. 2022-01-24 01:09:21 +00:00
virtio venus: VkExternalImageFormatProperties is optional 2022-01-13 02:59:51 +00:00
vulkan vulkan/wsi/x11: document implementation 2022-01-27 09:14:29 +00:00
meson.build meson: start building intel earlier. 2022-01-20 06:41:17 +00:00