History

Revert "printk: Block console kthreads when direct printing will be required"

This reverts commit c3230283e2819a69dad2cf7a63143fde8bab8b5c. The testing of 5.19 release candidates revealed missing synchronization between early and regular console functionality. It would be possible to start the console kthreads later as a workaround. But it is clear that console lock serialized console drivers between each other. It opens a big area of possible problems that were not considered by people involved in the development and review. printk() is crucial for debugging kernel issues and console output is very important part of it. The number of consoles is huge and a proper review would take some time. As a result it need to be reverted for 5.19.

Petr Mladek committed 4 years ago

Commit 05c96b31 parent 20fb0c81 file · +1 −3Browse files

Unified · Split

kernel/printk/printk.c+1−3
@@ -3729,9 +3729,7 @@ static bool printer_should_wake(struct console *con, u64 seq) · 3728 unmodified lines
3729 return true;3729 return true;
3730 3730
3731 if (con->blocked ||3731 if (con->blocked ||
3732 console_kthreads_atomically_blocked() ||3732 console_kthreads_atomically_blocked()) {
3733 system_state > SYSTEM_RUNNING ||
3734 oops_in_progress) {
3735 return false;3733 return false;
3736 }3734 }
3737 3735