Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm: avoid switching to text console if there is no panic timeout

Add a check for panic_timeout in the drm_fb_helper_panic() notifier: if
we're going to reboot immediately, the user will not be able to see the
messages anyway, and messing with the video mode may display artifacts,
and certainly get into several layers of complexity (including mutexes and
memory allocations) which we shall be much safer to avoid.

Signed-off-by: Hugh Dickins <hughd@google.com>
[ Edited commit message and modified to short-circuit panic_timeout < 0
instead of testing panic_timeout >= 0. -Mandeep ]
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Acked-by: David Rientjes <rientjes@google.com>
Acked-by: Stéphane Marchesin <marcheu@chromium.org>
Signed-off-by: Dave Airlie <airlied@redhat.com>

authored by

Hugh Dickins and committed by
Dave Airlie
d68752cf 1ea6b8f4

+7
+7
drivers/gpu/drm/drm_fb_helper.c
··· 255 255 int drm_fb_helper_panic(struct notifier_block *n, unsigned long ununsed, 256 256 void *panic_str) 257 257 { 258 + /* 259 + * It's a waste of time and effort to switch back to text console 260 + * if the kernel should reboot before panic messages can be seen. 261 + */ 262 + if (panic_timeout < 0) 263 + return 0; 264 + 258 265 printk(KERN_ERR "panic occurred, switching back to text console\n"); 259 266 return drm_fb_helper_force_kernel_mode(); 260 267 }