Re: [PATCH] kunit: tool: Force the use of the 'tty' console for UML
From: Petr Mladek
Date: Thu Jan 07 2021 - 11:54:23 EST
On Wed 2021-01-06 12:29:12, David Gow wrote:
> On Wed, Jan 6, 2021 at 3:52 AM Shuah Khan <skhan@xxxxxxxxxxxxxxxxxxx> wrote:
> >
> > On 1/5/21 11:57 AM, Andy Shevchenko wrote:
> > > On Tue, Jan 05, 2021 at 09:34:33AM -0700, Shuah Khan wrote:
> > >> On 1/5/21 9:21 AM, Petr Mladek wrote:
> > >>> On Mon 2021-01-04 09:23:57, Shuah Khan wrote:
> > >>>> On 12/22/20 4:11 AM, Andy Shevchenko wrote:
> > >>>>> On Mon, Dec 21, 2020 at 11:39:00PM -0800, David Gow wrote:
> > >>>>>> kunit_tool relies on the UML console outputting printk() output to the
> > >>>>>> tty in order to get results. Since the default console driver could
> > >>>>>> change, pass 'console=tty' to the kernel.
> > >>>>>>
> > >>>>>> This is triggered by a change[1] to use ttynull as a fallback console
> > >>>>>> driver which -- by chance or by design -- seems to have changed the
> > >>>>>> default console output on UML, breaking kunit_tool. While this may be
> > >>>>>> fixed, we should be less fragile to such changes in the default.
> > >>>>>>
> > >>>>>> [1]:
> > >>>>>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=757055ae8dedf5333af17b3b5b4b70ba9bc9da4e
> > >>>>>
> > >>>>> Reported-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> > >>>>> Tested-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
> > >>>>>
> > >>>>
> > >>>> Thank you all. Now in linux-kselftest kunit-fixes branch.
> > >>>>
> > >>>> Will send this up for rc3.
> > >>>>
> > >>>> Sorry for the delay - have been away from the keyboard for a
> > >>>> bit.
> > >>>
> > >>> JFYI, I am not sure that this is the right solution. I am
> > >>> looking into it, see
> > >>> https://lore.kernel.org/linux-kselftest/X%2FSRA1P8t+ONZFKb@alley/
> > >>> for more details.
> > >>>
> > >>
> > >> Thanks Petr. I will hold off on sending the patch up to Linus and
> > >> let you find a the right solution.
> > >
> > > Please. leave it in Linux Next at least. Otherwise kunit will be broken for a
> > > long time which is not good.
> > >
> > >
> >
> > Yes. That is the plan. It will be in there until real fix comes in.
The real fix would be too complicated for 5.11-rc3. Instead, I
proposed to revert the problematic commit, see
https://lore.kernel.org/lkml/20210107164400.17904-2-pmladek@xxxxxxxx/
I would like to push it for 5.11-rc3.
> Personally, I think that this patch makes some sense to keep even if
> the underlying issue with ttynull is resolved. Given that kunit.py
> requires the console output, explicitly stating we want console=tty
> set is probably worth doing rather than relying on it being the
> default.
I agree that the patch makes sense on its own. kunit depends on the
particular console. Note that "tty" is actually the UML-specific
stdio console implemented in arch/um/drivers/stdio_console.c.
Best Regards,
Petr