Hi Bruce,

Could you please merge these three patches into v6.12/standard/preempt-rt/base?

Allowing irq_work to be scheduled while trying to suspend has shown
to cause problems as some architectures interpret the pending
interrupts as a reason to not suspend. This became a problem for
printk() with the introduction of NBCON consoles.

Linux yocto introduce nbcon since commit 3b739d55b861 ("serial: 8250: Switch to 
nbcon console") in 6.12 preempt-rt.
This will encounter call trace when suspend in acpi s4 occasionally:
unchecked MSR access error: WRMSR to 0x83f (tried to write 0x00000000000000f6) 
at rIP: 0xffffffff8947e2f6 (native_apic_msr_write+0x26/0x50)
Call Trace:
 <TASK>
 ? x2apic_send_IPI_self+0x19/0x20
 arch_irq_work_raise+0x28/0x40
 __irq_work_queue_local+0x40/0xf0
 irq_work_queue+0x31/0x60
 nbcon_kthreads_wake+0x5f/0x80
 vprintk_emit+0x2c9/0x440
 vprintk_deferred+0x21/0x30
 vprintk+0x12/0x20
 _printk+0x6c/0x87
 swsusp_save+0x26/0x3a3
 swsusp_arch_suspend+0x63/0x70
 hibernation_snapshot+0x349/0x550
 hibernate.cold+0xba/0x2a7

There is no nbcon in upstream v6.12, these patches will not go into v6.12.
So backport them to avoid calling irq_work when suspend to fix unchecked MSR 
access error.

Patch 3 is a fix for the former one. 
See the links:
https://lore.kernel.org/all/[email protected]/
https://lore.kernel.org/all/[email protected]/

Regards,
Jianpeng

John Ogness (3):
  printk: Allow printk_trigger_flush() to flush all types
  printk: Avoid scheduling irq_work on suspend
  printk: Avoid irq_work for printk_deferred() on suspend

 kernel/printk/internal.h |  8 ++--
 kernel/printk/nbcon.c    |  9 ++++-
 kernel/printk/printk.c   | 83 ++++++++++++++++++++++++++++++++--------
 3 files changed, 79 insertions(+), 21 deletions(-)

-- 
2.49.1

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#16260): 
https://lists.yoctoproject.org/g/linux-yocto/message/16260
Mute This Topic: https://lists.yoctoproject.org/mt/117611992/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/linux-yocto/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to