On (02/12/19 15:29), John Ogness wrote: > - console_flush_on_panic() currently is a NOP. It is pretty clear how > this could be implemented if atomic_write was available. But if no > such console is registered, it is not clear what should be done. Is > this function really even needed? If you now rely on a fully preemptible printk kthread to flush pending logbuf messages, then console_flush_on_panic() is your only chance to see those pending logbuf messages on the serial console when the system dies. Non-atomic consoles should become atomic once you call bust_spinlocks(1), this is what we currently have: panic() bust_spinlocks(1) // sets oops_in_progress console_flush_on_panic() call_console_drivers() -> serial_driver_write() if (oops_in_progress) locked = spin_trylock_irqsave(&port->lock); uart_console_write(); if (locked) spin_unlock_irqrestore(&port->lock); -ss