linux/kernel/printk
John Ogness 5f339c46f1 printk: Postpone kthread startup
There have been various bug reports related to SMP systems hanging
on boot. The reports vary but seem to have some overlap with regard
to missed IPI's during SMP setup. The reports also show that
reverting NBCON console usage allows the bugs to disappear.

The NBCON kthreads for console printing are started very early
during boot using early_initcall(). Since these kthreads are
asynchronously enabling/disabling interrupts during early boot, they
may be interfering with early SMP setup on some hardware platforms.

Starting the console printing kthreads later has shown to avoid the
hanging on systems that could previously reproduce the issue.

Postpone kthread starting until after all arch initcalls have
completed.

Reported-by: Derek Barbosa <debarbos@redhat.com>
Closes: https://lore.kernel.org/linux-rt-users/arPmYPbFLf2EldIl@debarbos-thinkpadt14gen5.rmtusma.csb
Fixes: 76f258bf3f ("printk: nbcon: Introduce printer kthreads")
Signed-off-by: John Ogness <john.ogness@linutronix.de>
Tested-by: Derek Barbosa <debarbos@redhat.com>
Link: https://patch.msgid.link/20261016085441.857695-1-john.ogness@linutronix.de
Signed-off-by: Petr Mladek <pmladek@suse.com>
2026-10-16 17:07:29 +02:00
..
.kunitconfig printk: ringbuffer: Add KUnit test 2025-06-18 16:42:42 +02:00
braille.c
braille.h
console_cmdline.h
index.c
internal.h Summary 2026-02-18 10:45:36 -08:00
Makefile printk: ringbuffer: Add KUnit test 2025-06-18 16:42:42 +02:00
nbcon.c printk: fix kernel-doc name for nbcon_write_context_is_braille 2026-10-14 15:00:40 +02:00
printk_ringbuffer_kunit_test.c printk: kunit: support offstack cpumask 2025-09-10 17:18:37 +02:00
printk_ringbuffer.c printk: ringbuffer: fix errors in comments 2026-03-31 17:40:23 +02:00
printk_ringbuffer.h Merge branch 'rework/prb-fixes' into for-linus 2026-04-20 13:42:01 +02:00
printk_safe.c
printk.c printk: Postpone kthread startup 2026-10-16 17:07:29 +02:00
sysctl.c sysctl: Remove unused ctl_table forward declarations 2026-01-05 13:54:41 +01:00