mesa/src/freedreno/decode
Danylo Piliaiev 0c4676a3aa freedreno: Add 'replay' tool which allows to replay cmdstreams
Replay command stream obtained from:
- /sys/kernel/debug/dri/0/rd
- /sys/kernel/debug/dri/0/hangrd
!!! Command stream capture should be done with ALL buffers:
- echo 1 > /sys/module/msm/parameters/rd_full

Requires kernel with MSM_INFO_SET_IOVA support.

This tool is intended for reproduction of various GPU issues:
- GPU hangs, note that command stream obtained from hangrd
  may not reproduce (rarely) the hang, since the buffers are
  snapshotted at the moment of the hang and not at the start
  of the hanging command stream.
- TODO: Misrendering, would require marking framebuffer images
  at each renderpass in order to fetch and decode them.

Code from Freedreno/Turnip is not re-used here since the relevant
pieces may introduce additional allocations which cannot be allowed
during the replay.

Signed-off-by: Danylo Piliaiev <dpiliaiev@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19171>
2022-10-25 20:26:49 +00:00
..
scripts tu: Rename RB_MSAA_CNTL to RB_BLIT_GMEM_MSAA_CNTL 2022-09-21 11:20:15 +00:00
buffers.c freedreno/cffdec: Fix gpuaddr comparision 2021-08-20 22:01:49 +00:00
buffers.h freedreno/decode: Re-indent 2021-04-17 15:38:56 +00:00
cffdec.c freedreno: Replace A6XX_IBO with A6XX_TEX_CONST 2022-02-28 23:33:22 +00:00
cffdec.h freedreno: Move crashdec/cffdec tests to be meson unit tests. 2021-10-01 23:16:04 +00:00
cffdump.c freedreno/decode: Handle chip-id 2022-01-14 23:17:03 +00:00
crashdec-hfi.c freedreno/crashdec: HFI queue decoding 2021-12-01 17:53:21 +00:00
crashdec-mempool.c freedreno/crashdec: Split out mempool decoding 2021-12-01 17:53:21 +00:00
crashdec.c freedreno/crashdec: Basing GMU log decoding 2021-12-01 17:53:21 +00:00
crashdec.h freedreno/crashdec: HFI queue decoding 2021-12-01 17:53:21 +00:00
io.c freedreno/decode: Re-indent 2021-04-17 15:38:56 +00:00
io.h freedreno/decode: Re-indent 2021-04-17 15:38:56 +00:00
meson.build freedreno: Add 'replay' tool which allows to replay cmdstreams 2022-10-25 20:26:49 +00:00
pager.c freedreno/decode: Re-indent 2021-04-17 15:38:56 +00:00
pager.h
pgmdump.c freedreno/decode: Re-indent 2021-04-17 15:38:56 +00:00
pgmdump2.c freedreno: Reuse u_math.h instead of open coding uif(). 2021-10-01 23:16:04 +00:00
redump.h freedreno/decode: Handle chip-id 2022-01-14 23:17:03 +00:00
replay.c freedreno: Add 'replay' tool which allows to replay cmdstreams 2022-10-25 20:26:49 +00:00
rnnutil.c freedreno/cffdump: Fix 64-bit reg decode in script mode. 2021-11-15 22:25:08 +00:00
rnnutil.h freedreno/cffdump: Fix 64-bit reg decode in script mode. 2021-11-15 22:25:08 +00:00
script.c freedreno/cffdump: Fix 64-bit reg decode in script mode. 2021-11-15 22:25:08 +00:00
script.h freedreno/decode: Re-indent 2021-04-17 15:38:56 +00:00
util.h freedreno: Reuse u_math.h instead of open coding uif(). 2021-10-01 23:16:04 +00:00