[Intel-gfx] [PATCH v2 0/3] drm: Add panic handling
Daniel Vetter
daniel at ffwll.ch
Mon Mar 11 18:53:04 UTC 2019
On Mon, Mar 11, 2019 at 06:42:15PM +0100, Noralf Trønnes wrote:
> This patchset adds a way for DRM drivers to display kernel messages
> during panic().
>
> I had a Windows blue screen last year and remembered this patchset, so I
> did a new version that I never got around to put out. Now that panic
> handling came up on the ML, I'm sending it out as part of the discussion.
>
> TODO:
> Determine which part of the framebuffer that is actually visible. I
> don't know enough about KMS to do this. See drm_panic_kmsg_render_screen().
drm_plane_state->src should have this, at least for all drivers using the
clip helpers. Which I think is rolled out fairly well.
If that happens to be all 0, then drm_plane_state->src_[xyhw] is a decent
fallback. If the plane is occluded or scaled then I guess that's just bad
luck.
-Daniel
>
> Testing:
> I have tested[1] using the formats and resolutions support by vc4 and
> modetest. I have even recorded it[2]. RG24 and BG24 gave an unexpected
> result, not sure what to make of it.
>
> Noralf.
>
> [1] https://gist.github.com/notro/b9fdff4c6a68a307091e970598f27ed0
> [2] https://youtu.be/lZ80vL4dgpE
> Version 1 (Aug 2016): https://patchwork.freedesktop.org/series/10867/
>
> Changes since version 1:
> - Use kernel message dumper
> - Add multicolumn support
> - Support some YUV formats
> - cma: vmap PRIME buffers on import to support that case
>
> Noralf Trønnes (3):
> drm: Add support for panic message output
> drm/cma-helper: Add support for panic screen
> drm/vc4: Support for panic screen
>
> drivers/gpu/drm/Kconfig | 3 +
> drivers/gpu/drm/Makefile | 2 +-
> drivers/gpu/drm/drm_drv.c | 3 +
> drivers/gpu/drm/drm_fb_cma_helper.c | 43 ++++
> drivers/gpu/drm/drm_framebuffer.c | 117 +++++++++
> drivers/gpu/drm/drm_gem_cma_helper.c | 3 +
> drivers/gpu/drm/drm_internal.h | 4 +
> drivers/gpu/drm/drm_panic.c | 363 +++++++++++++++++++++++++++
> drivers/gpu/drm/vc4/vc4_kms.c | 3 +-
> include/drm/drm_fb_cma_helper.h | 4 +-
> include/drm/drm_framebuffer.h | 41 +++
> 11 files changed, 583 insertions(+), 3 deletions(-)
> create mode 100644 drivers/gpu/drm/drm_panic.c
>
> --
> 2.20.1
>
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
More information about the Intel-gfx
mailing list