Re: [lkp-robot] [include/linux/string.h] 6974f0c455: kernel_BUG_at_lib/string.c

From: Petr Mladek
Date: Fri Jul 21 2017 - 06:03:51 EST


On Fri 2017-07-21 12:15:09, Andy Shevchenko wrote:
> On Fri, 2017-07-21 at 09:59 +0800, Ye Xiaolong wrote:
> > Hi,
> >
> > On 07/19, Linus Torvalds wrote:
> > > Hmm. I wonder why the kernel test robot ends up having that annoying
> > > line doubling for the dmesg.
> > >
> >
> > Hmm, this line doubling issue should be caused by we set both
> > 'earlyprintk=ttyS0,115200' and 'console=ttyS0,115200' in cmdline,
> > after I
> > remove any of it, this issue is gone, is it an inappropriate setting?
> >
> > FYI, the whole kernel command line is:
> >
> > earlyprintk=ttyS0,115200
> > console=ttyS0,115200
> > console=tty0

The order is important here. Early consoles are disabled when
the preferred console (last on the command line) is registered.
Therefore the following order should fix it:

console=tty0
earlyprintk=ttyS0,115200
console=ttyS0,115200


Best Regards,
Petr

PS: I have recently spent a lot of time trying to understad this
part of the code. Unfortunately, it is not easy to improve.
The same console might be registered by various aliases.
Therefore it is not easy to check which early console match
a real one. There are match() functions but they have side
effects. It would require some non-trivial redesign.

I am working on some partial clean that would make the
code easier but it is really hard to avoid regressions.