On Fri, 2016-10-07 at 14:06 -0700, Linus Torvalds wrote: > And btw, even without an explicit KERN_<level>, you should still not > get any interleaving. Only an _explicit_ KERN_CONT should cause > interleaving, and dammit, if some interrupt does a KERN_CONT without > having had a non-cont printk before it, that code is buggy and should > damn well be fixed.
That's not true. KERN_CONT is a no-op. Bare printks interleave. $ git grep KERN_CONT include/linux/kern_levels.h include/linux/kern_levels.h:#define KERN_CONT "" I think it was like 2007 when I first suggested _not_ having newlines on the pr_<level> macros that were eventually added by Emil Medve.