cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

msm-crash-dump.rst (2420B)


      1:orphan:
      2
      3=====================
      4MSM Crash Dump Format
      5=====================
      6
      7Following a GPU hang the MSM driver outputs debugging information via
      8/sys/kernel/dri/X/show or via devcoredump (/sys/class/devcoredump/dcdX/data).
      9This document describes how the output is formatted.
     10
     11Each entry is in the form key: value. Sections headers will not have a value
     12and all the contents of a section will be indented two spaces from the header.
     13Each section might have multiple array entries the start of which is designated
     14by a (-).
     15
     16Mappings
     17--------
     18
     19kernel
     20	The kernel version that generated the dump (UTS_RELEASE).
     21
     22module
     23	The module that generated the crashdump.
     24
     25time
     26	The kernel time at crash formated as seconds.microseconds.
     27
     28comm
     29	Comm string for the binary that generated the fault.
     30
     31cmdline
     32	Command line for the binary that generated the fault.
     33
     34revision
     35	ID of the GPU that generated the crash formatted as
     36	core.major.minor.patchlevel separated by dots.
     37
     38rbbm-status
     39	The current value of RBBM_STATUS which shows what top level GPU
     40	components are in use at the time of crash.
     41
     42ringbuffer
     43	Section containing the contents of each ringbuffer. Each ringbuffer is
     44	identified with an id number.
     45
     46	id
     47		Ringbuffer ID (0 based index).  Each ringbuffer in the section
     48		will have its own unique id.
     49	iova
     50		GPU address of the ringbuffer.
     51
     52	last-fence
     53		The last fence that was issued on the ringbuffer
     54
     55	retired-fence
     56		The last fence retired on the ringbuffer.
     57
     58	rptr
     59		The current read pointer (rptr) for the ringbuffer.
     60
     61	wptr
     62		The current write pointer (wptr) for the ringbuffer.
     63
     64	size
     65		Maximum size of the ringbuffer programmed in the hardware.
     66
     67	data
     68		The contents of the ring encoded as ascii85.  Only the used
     69		portions of the ring will be printed.
     70
     71bo
     72	List of buffers from the hanging submission if available.
     73	Each buffer object will have a uinque iova.
     74
     75	iova
     76		GPU address of the buffer object.
     77
     78	size
     79		Allocated size of the buffer object.
     80
     81	data
     82		The contents of the buffer object encoded with ascii85.  Only
     83		Trailing zeros at the end of the buffer will be skipped.
     84
     85registers
     86	Set of registers values. Each entry is on its own line enclosed
     87	by brackets { }.
     88
     89	offset
     90		Byte offset of the register from the start of the
     91		GPU memory region.
     92
     93	value
     94		Hexadecimal value of the register.
     95
     96registers-hlsq
     97		(5xx only) Register values from the HLSQ aperture.
     98		Same format as the register section.