Alan Previn a0f1f7b4f7 drm/i915/guc: Print the GuC error capture output register list.
Print the GuC captured error state register list (string names
and values) when gpu_coredump_state printout is invoked via
the i915 debugfs for flushing the gpu error-state that was
captured prior.

Since GuC could have reported multiple engine register dumps
in a single notification event, parse the captured data
(appearing as a stream of structures) to identify each dump as
a different 'engine-capture-group-output'.

Finally, for each 'engine-capture-group-output' that is found,
verify if the engine register dump corresponds to the
engine_coredump content that was previously populated by the
i915_gpu_coredump function. That function would have copied
the context's vma's including the bacth buffer during the
G2H-context-reset notification that occurred earlier. Perform
this verification check by comparing guc_id, lrca and engine-
instance obtained from the 'engine-capture-group-output' vs a
copy of that same info taken during i915_gpu_coredump. If
they match, then print those vma's as well (such as the batch
buffers).

NOTE: the output format was verified using the gem_exec_capture
IGT test.

Signed-off-by: Alan Previn <alan.previn.teres.alexis@intel.com>
Reviewed-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20220321164527.2500062-14-alan.previn.teres.alexis@intel.com
2022-03-22 10:33:31 -07:00
..
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-07 16:35:35 -08:00
2022-02-25 05:50:18 +10:00
2021-08-10 20:14:01 +02:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2021-10-28 14:59:38 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2022-02-07 16:35:35 -08:00
2022-02-25 05:50:18 +10:00
2022-02-25 05:50:18 +10:00
2021-08-10 20:14:01 +02:00
2022-02-25 05:50:18 +10:00
2021-08-02 10:19:43 +02:00
2021-08-02 10:19:43 +02:00
2022-02-25 05:50:18 +10:00
2022-02-07 16:35:35 -08:00
2021-08-02 10:19:43 +02:00
2022-02-25 05:50:18 +10:00
2021-08-02 10:19:43 +02:00
2022-02-25 05:50:18 +10:00
2021-11-30 09:41:28 +01:00
2021-08-02 10:19:43 +02:00
2021-10-01 15:55:47 +02:00
2021-11-30 09:41:28 +01:00
2021-08-02 10:19:43 +02:00
2021-05-17 21:19:48 +02:00
2022-02-07 16:35:35 -08:00
2021-08-19 09:02:55 +09:00
2022-02-25 05:50:18 +10:00
2021-08-02 10:19:43 +02:00
2021-08-10 20:14:01 +02:00
2021-08-02 10:19:43 +02:00