Re: printk: what is going on with additional newlines?

From: Sergey Senozhatsky
Date: Sun Sep 17 2017 - 22:41:23 EST


On (09/17/17 19:22), Joe Perches wrote:
> On Mon, 2017-09-18 at 09:46 +0900, Sergey Senozhatsky wrote:
> > there is another reason why I think that, yes, we probably better do
> > it some other way. and the reason is that not every message that looks
> > like !PREFIX (does not start with KERN_SOH_ASCII) is _actually_ a
> > !PREFIX message. the normal/usual way is to have something like
> >
> > printk(KERN_SOH_ASCII %d " foo bar / %s %s\n", "foo", "bar");
> >
> > but some messages look like
> >
> > printk("%s", KERN_SOH_ASCII %d "foo bar\n");
>
> There are no messages that look like that.
>
> There are 2 entries somewhat like that though
>
> net/bridge/netfilter/ebt_log.c: printk(KERN_SOH "%c%s IN=%s OUT=%s MAC source = %pM MAC dest = %pM proto = 0x%04x",
> net/netfilter/nf_log_common.c:  nf_log_buf_add(m, KERN_SOH "%c%sIN=%s OUT=%s ",

take a look at ACPI acpi_os_vprintf(). for instance.

-ss