On (01/22/18 17:56), Sergey Senozhatsky wrote: [..] > Assume the following, But more importantly we are missing another huge thing - console_unlock(). Suppose: console_lock(); << preemption >> printk printk .. printk console_unlock() for (;;) { call_console_drivers() dump_stack queue IRQ work IRQ work >> flush_printk_safe printk_deferred() ... printk_deferred() << iret } This should explode: sleepable console_unlock() may reschedule, printk_safe flush bypasses recursion checks. -ss -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>