99 lines · plain
1:orphan:2 3=====================4MSM Crash Dump Format5=====================6 7Following a GPU hang the MSM driver outputs debugging information via8/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 value12and 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 designated14by a (-).15 16Mappings17--------18 19kernel20 The kernel version that generated the dump (UTS_RELEASE).21 22module23 The module that generated the crashdump.24 25time26 The kernel time at crash formatted as seconds.microseconds.27 28comm29 Comm string for the binary that generated the fault.30 31cmdline32 Command line for the binary that generated the fault.33 34revision35 ID of the GPU that generated the crash formatted as36 core.major.minor.patchlevel separated by dots.37 38rbbm-status39 The current value of RBBM_STATUS which shows what top level GPU40 components are in use at the time of crash.41 42ringbuffer43 Section containing the contents of each ringbuffer. Each ringbuffer is44 identified with an id number.45 46 id47 Ringbuffer ID (0 based index). Each ringbuffer in the section48 will have its own unique id.49 iova50 GPU address of the ringbuffer.51 52 last-fence53 The last fence that was issued on the ringbuffer54 55 retired-fence56 The last fence retired on the ringbuffer.57 58 rptr59 The current read pointer (rptr) for the ringbuffer.60 61 wptr62 The current write pointer (wptr) for the ringbuffer.63 64 size65 Maximum size of the ringbuffer programmed in the hardware.66 67 data68 The contents of the ring encoded as ascii85. Only the used69 portions of the ring will be printed.70 71bo72 List of buffers from the hanging submission if available.73 Each buffer object will have a uinque iova.74 75 iova76 GPU address of the buffer object.77 78 size79 Allocated size of the buffer object.80 81 data82 The contents of the buffer object encoded with ascii85. Only83 Trailing zeros at the end of the buffer will be skipped.84 85registers86 Set of registers values. Each entry is on its own line enclosed87 by brackets { }.88 89 offset90 Byte offset of the register from the start of the91 GPU memory region.92 93 value94 Hexadecimal value of the register.95 96registers-hlsq97 (5xx only) Register values from the HLSQ aperture.98 Same format as the register section.99