Messages in this thread | | | From | David Laight <> | Subject | RE: [PATCH] x86: Avoid pr_cont() in show_opcodes() | Date | Tue, 10 Jul 2018 16:51:53 +0000 |
| |
From: Josh Poimboeuf > Sent: 09 July 2018 20:12 > On Mon, Jul 09, 2018 at 10:49:53AM +0200, Peter Zijlstra wrote: > > On Sat, Jul 07, 2018 at 10:54:28PM +0900, Tetsuo Handa wrote: > > > >> Since syzbot is confused by concurrent printk() messages [1], > > > >> this patch changes show_opcodes() to use snprintf(). > > > > But how big of a problem is that really? We can't very well remove all > > pr_cont stuff from the kernel. > > I'd say we should try to make oopses as legible as possible.
To make oopses legible you need to lock the output between output lines. Which would require a 'KERN_CONTINUED' marker on the previous print.
> Also KERN_CONT is inherently broken, and we should avoid using it in > general, IMO.
I'm sure something semi-automatic could be done to expect a further print if the line doesn't end in '\n'. A per-cpu line buffer is probably excessive, but some kind of timing out lock might work (release expecting re-acquire).
David
| |