[PATCH v2 1/1] drm/fb-helper: Don't schedule_work() to flush frame buffer during panic()

Zhuo, Qiuxu qiuxu.zhuo at intel.com
Mon Aug 5 08:10:42 UTC 2024


Hi Thomas,

> From: Thomas Zimmermann <tzimmermann at suse.de>
> Sent: Monday, August 5, 2024 3:31 PM
> [...]
> > Hi Maarten and maintainers,
> >
> > A gentle ping :-).
> >
> > Could you please help push this v2 fix upstream?
> > If you have any concerns, please let me know.
> 
> I already acked this patch, but I still have a question: during a panic, will fbcon

Thanks for your kind review of this patch and ACK.

> still print a panic message? I think that would likely require scheduling that
> worker.

During the error injection testing:

1) Without this v2 fix:

   1.1) If panic() is not blocked on [1] (~99 times in 100 cycles),
        then the console/fbcon can print normal panic-related messages like [2],
        and the system can reboot successfully.

   1.2) If panic() is blocked on [1] (~1 time in 100 cycles),
        then the console/fbcon is silent and the system gets hung without reboot.
         This is not the expected behavior. The system is expected to reboot.

2) With this v2 fix:

   2.1) The console/fbcon can always print normal panic related messages like[2],
        and the system can reboot successfully. Same behavior to 1.1).
        [ we tested it ~1500 cycles. ]

[1] panic() -> ... drm_fb_helper_damage() -> schedule_work().
    For details, pls see the v2 commit message.

[2] Panic messages:
    [  133.900042] mce: [Hardware Error]: CPU 0: Machine Check Exception: 5 Bank 4: ba00000000000e0b
    [  133.900046] mce: [Hardware Error]: RIP !INEXACT! 10:<ffffffff8229ebec> {intel_idle_xstate+0x6c/0xc0}
    [  133.900055] mce: [Hardware Error]: TSC 9701dd289b MISC 29100000 PPIN 9000d7561bb0e340
    [  133.900057] mce: [Hardware Error]: PROCESSOR 0:a06d1 TIME 1715827713 SOCKET 0 APIC 0 microcode 810001d0
    [  133.900060] mce: [Hardware Error]: Run the above through 'mcelog --ascii'
    [  134.053858] mce: [Hardware Error]: Machine check: Processor context corrupt
    [  134.053866] Kernel panic - not syncing: Fatal machine check
    [  134.075183] Kernel Offset: disabled
    [  134.111372] pstore: backend (erst) writing error (-28)

Thanks!
-Qiuxu
 




More information about the dri-devel mailing list