Re: printk: what is going on with additional newlines?
From: Sergey Senozhatsky
Date: Tue Aug 29 2017 - 21:01:31 EST
Hello,
On (08/29/17 19:50), Steven Rostedt wrote:
[..]
> > A private buffer has none of those issues.
>
> What about using the seq_buf*() then?
>
> struct seq_buf s;
>
> buf = kmalloc(mysize);
> seq_buf_init(&s, buf, mysize);
>
> seq_printf(&s,"blah blah %d", bah_blah);
> [...]
> seq_printf(&s, "my last print\n");
>
> printk("%.*s", s.len, s.buffer);
>
> kfree(buf);
could do. for a single continuation line printk("%.*s", s.len, s.buffer)
this will work perfectly fine. for a more general case - backtraces, dumps,
etc. - this requires some tweaks.
-ss