]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/fb-helper: Set skip_panic if the drm driver supports drm panic
authorJocelyn Falempe <jfalempe@redhat.com>
Thu, 18 Jul 2024 09:21:27 +0000 (11:21 +0200)
committerJocelyn Falempe <jfalempe@redhat.com>
Fri, 19 Jul 2024 09:38:23 +0000 (11:38 +0200)
fb_info->skip_panic flag prevents fbcon from writing to the
framebuffer during a kernel panic. So set it when the drm driver
implements drm panic, to avoid overwriting the panic screen.

Signed-off-by: Jocelyn Falempe <jfalempe@redhat.com>
Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20240717090102.968152-3-jfalempe@redhat.com
drivers/gpu/drm/drm_fb_helper.c

index e2e19f49342e1b90d17c49b008f5c2a524fc64d8..6d1dc99f80aa055c23a312f64898ae44cb45c97a 100644 (file)
@@ -44,6 +44,7 @@
 #include <drm/drm_vblank.h>
 
 #include "drm_internal.h"
+#include "drm_crtc_internal.h"
 
 static bool drm_fbdev_emulation = true;
 module_param_named(fbdev_emulation, drm_fbdev_emulation, bool, 0600);
@@ -524,6 +525,7 @@ struct fb_info *drm_fb_helper_alloc_info(struct drm_fb_helper *fb_helper)
        fb_helper->info = info;
        info->skip_vt_switch = true;
 
+       info->skip_panic = drm_panic_is_enabled(fb_helper->dev);
        return info;
 
 err_release: