All of lore.kernel.org
 help / color / mirror / Atom feed
From: Petr Mladek <pmladek@suse.com>
To: Vineet Gupta <vgupta@synopsys.com>
Cc: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>,
	John Ogness <john.ogness@linutronix.de>,
	Steven Rostedt <rostedt@goodmis.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Guenter Roeck <linux@roeck-us.net>,
	Shreyas Joshi <shreyas.joshi@biamp.com>,
	shreyasjoshi15@gmail.com,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com>,
	linux-kernel@vger.kernel.org, buildroot@busybox.net,
	Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
	linux-arch@vger.kernel.org,
	arcml <linux-snps-arc@lists.infradead.org>
Subject: Re: ARC no console output (was Re: [PATCH 1/2] init/console: Use ttynull as a fallback when there is no console)
Date: Fri, 8 Jan 2021 10:30:33 +0100	[thread overview]
Message-ID: <X/gmOSvgzrPxBdIk@alley> (raw)
In-Reply-To: <d7db7948-4831-8dac-0d16-7933bcd9d995@synopsys.com>

On Thu 2021-01-07 21:18:20, Vineet Gupta wrote:
> On 1/7/21 7:48 PM, Sergey Senozhatsky wrote:
> > On (21/01/07 09:58), Vineet Gupta wrote:
> > > On 1/7/21 9:04 AM, Petr Mladek wrote:
> > > > On Thu 2021-01-07 08:43:16, Vineet Gupta wrote:
> > > > > Hi John,
> > > > > 
> > > > > On 1/7/21 1:02 AM, John Ogness wrote:
> > > > > > Hi Vineet,
> > > > > > 
> > > > > > On 2021-01-06, Vineet Gupta <vgupta@synopsys.com> wrote:
> > > > > > > This breaks ARC booting (no output on console).
> > > > > > 
> > > > > > Could you provide the kernel boot arguments that you use? This series is
> > > > > > partly about addressing users that have used boot arguments that are
> > > > > > technically incorrect (even if had worked). Seeing the boot arguments of
> > > > > > users that are not experiencing problems may help to reveal some of the
> > > > > > unusual console usages until now.
> > > > > 
> > > > > 
> > > > > Kernel command line: earlycon=uart8250,mmio32,0xf0005000,115200n8
> > > > > console=ttyS0,115200n8 debug print-fatal-signals=1
> > > > 
> > > > This is strange, the problematic patch should use ttynull
> > > > only as a fallback. It should not be used when a particular console
> > > > is defined on the command line.
> > > 
> > > What happens in my case is console_on_rootfs() doesn't find /dev/console and
> > > switching to ttynull. /dev is not present because devtmpfs doesn't automount
> > > for initramfs.

I see. I did not though about a possibility that /dev/console could
not be opened from other reasons.

> > I wonder if we'll move the nulltty fallback logic into printk code [1]
> > will it fix the problem?
> > 
> > [1] https://lore.kernel.org/lkml/X6x%2FAxD1qanC6evJ@jagdpanzerIV.localdomain/
> 
> Your reasoning in the post above makes total sense.
> 
> I tired the patch: adding register_ttynull_console() call in
> console_device(), removing from console_on_rootfs() band that works too.

IMHO, this worked because you removed the change in console_on_rootfs().

I guess that the change in console_device() did not make any
difference. It was likely not called because
filp_open("/dev/console", O_RDWR, 0) failed earlier because
/dev/ did not exists.

Anyway, the proposed change in console_device() has some
more problems that I realized this week:

   + It does not check whether console_drivers really contains
     any console with tty binding.

   + register_ttynull_console() calls
    add_preferred_console(ttynull_console.name, 0, NULL).
    The ttynull console stays preferred even when any better
    console gets registered later. As a result, it would
    stay associated with /dev/console.

The right solution would be to enable ttynull console and
do _not_ modify the list of preferred consoles. And it makes
sense to add the console only there is no console with
tty binding at the moment.

I still have to think whether console_device() is a better or
worse location for adding tyynull as a fallback.

Anyway, it has to wait. The proper solution can't be done easily
with the existing register_console() code. We need to clean
it up first.

Best Regards,
Petr

WARNING: multiple messages have this Message-ID (diff)
From: Petr Mladek <pmladek@suse.com>
To: Vineet Gupta <vgupta@synopsys.com>
Cc: linux-arch@vger.kernel.org,
	Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com>,
	John Ogness <john.ogness@linutronix.de>,
	Shreyas Joshi <shreyas.joshi@biamp.com>,
	linux-kernel@vger.kernel.org,
	Steven Rostedt <rostedt@goodmis.org>,
	Sergey Senozhatsky <sergey.senozhatsky@gmail.com>,
	Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	buildroot@busybox.net, arcml <linux-snps-arc@lists.infradead.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	shreyasjoshi15@gmail.com, Guenter Roeck <linux@roeck-us.net>
Subject: Re: ARC no console output (was Re: [PATCH 1/2] init/console: Use ttynull as a fallback when there is no console)
Date: Fri, 8 Jan 2021 10:30:33 +0100	[thread overview]
Message-ID: <X/gmOSvgzrPxBdIk@alley> (raw)
In-Reply-To: <d7db7948-4831-8dac-0d16-7933bcd9d995@synopsys.com>

On Thu 2021-01-07 21:18:20, Vineet Gupta wrote:
> On 1/7/21 7:48 PM, Sergey Senozhatsky wrote:
> > On (21/01/07 09:58), Vineet Gupta wrote:
> > > On 1/7/21 9:04 AM, Petr Mladek wrote:
> > > > On Thu 2021-01-07 08:43:16, Vineet Gupta wrote:
> > > > > Hi John,
> > > > > 
> > > > > On 1/7/21 1:02 AM, John Ogness wrote:
> > > > > > Hi Vineet,
> > > > > > 
> > > > > > On 2021-01-06, Vineet Gupta <vgupta@synopsys.com> wrote:
> > > > > > > This breaks ARC booting (no output on console).
> > > > > > 
> > > > > > Could you provide the kernel boot arguments that you use? This series is
> > > > > > partly about addressing users that have used boot arguments that are
> > > > > > technically incorrect (even if had worked). Seeing the boot arguments of
> > > > > > users that are not experiencing problems may help to reveal some of the
> > > > > > unusual console usages until now.
> > > > > 
> > > > > 
> > > > > Kernel command line: earlycon=uart8250,mmio32,0xf0005000,115200n8
> > > > > console=ttyS0,115200n8 debug print-fatal-signals=1
> > > > 
> > > > This is strange, the problematic patch should use ttynull
> > > > only as a fallback. It should not be used when a particular console
> > > > is defined on the command line.
> > > 
> > > What happens in my case is console_on_rootfs() doesn't find /dev/console and
> > > switching to ttynull. /dev is not present because devtmpfs doesn't automount
> > > for initramfs.

I see. I did not though about a possibility that /dev/console could
not be opened from other reasons.

> > I wonder if we'll move the nulltty fallback logic into printk code [1]
> > will it fix the problem?
> > 
> > [1] https://lore.kernel.org/lkml/X6x%2FAxD1qanC6evJ@jagdpanzerIV.localdomain/
> 
> Your reasoning in the post above makes total sense.
> 
> I tired the patch: adding register_ttynull_console() call in
> console_device(), removing from console_on_rootfs() band that works too.

IMHO, this worked because you removed the change in console_on_rootfs().

I guess that the change in console_device() did not make any
difference. It was likely not called because
filp_open("/dev/console", O_RDWR, 0) failed earlier because
/dev/ did not exists.

Anyway, the proposed change in console_device() has some
more problems that I realized this week:

   + It does not check whether console_drivers really contains
     any console with tty binding.

   + register_ttynull_console() calls
    add_preferred_console(ttynull_console.name, 0, NULL).
    The ttynull console stays preferred even when any better
    console gets registered later. As a result, it would
    stay associated with /dev/console.

The right solution would be to enable ttynull console and
do _not_ modify the list of preferred consoles. And it makes
sense to add the console only there is no console with
tty binding at the moment.

I still have to think whether console_device() is a better or
worse location for adding tyynull as a fallback.

Anyway, it has to wait. The proper solution can't be done easily
with the existing register_console() code. We need to clean
it up first.

Best Regards,
Petr

_______________________________________________
linux-snps-arc mailing list
linux-snps-arc@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-snps-arc

  reply	other threads:[~2021-01-08  9:31 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-11-11 13:54 [PATCH 0/2] printk/console: Use ttynull when no console is available or wanted Petr Mladek
2020-11-11 13:54 ` [PATCH 1/2] init/console: Use ttynull as a fallback when there is no console Petr Mladek
2020-11-11 16:36   ` Greg Kroah-Hartman
2020-11-11 22:52   ` Guenter Roeck
2020-11-11 23:58   ` Sergey Senozhatsky
2020-11-12  0:17   ` Sergey Senozhatsky
2020-11-12  1:45     ` Sergey Senozhatsky
2020-11-16 16:20       ` Petr Mladek
2021-01-06 23:36   ` [Buildroot] ARC no console output (was Re: [PATCH 1/2] init/console: Use ttynull as a fallback when there is no console) Vineet Gupta
2021-01-06 23:36     ` Vineet Gupta
2021-01-06 23:36     ` Vineet Gupta
2021-01-07  9:02     ` John Ogness
2021-01-07  9:02       ` John Ogness
2021-01-07 13:14       ` Greg Ungerer
2021-01-07 13:14         ` Greg Ungerer
2021-01-07 16:43       ` [Buildroot] " Vineet Gupta
2021-01-07 16:43         ` Vineet Gupta
2021-01-07 16:43         ` Vineet Gupta
2021-01-07 17:04         ` Petr Mladek
2021-01-07 17:04           ` Petr Mladek
2021-01-07 17:58           ` [Buildroot] " Vineet Gupta
2021-01-07 17:58             ` Vineet Gupta
2021-01-07 17:58             ` Vineet Gupta
2021-01-08  3:48             ` Sergey Senozhatsky
2021-01-08  3:48               ` Sergey Senozhatsky
2021-01-08  5:18               ` [Buildroot] " Vineet Gupta
2021-01-08  5:18                 ` Vineet Gupta
2021-01-08  5:18                 ` Vineet Gupta
2021-01-08  9:30                 ` Petr Mladek [this message]
2021-01-08  9:30                   ` Petr Mladek
2021-01-13 22:07             ` [Buildroot] " Peter Korsgaard
2021-01-13 22:07               ` Peter Korsgaard
2021-01-13 22:07               ` Peter Korsgaard
2021-01-07  9:09     ` Richard Weinberger
2021-01-07  9:09       ` Richard Weinberger
2021-01-07 12:48     ` Petr Mladek
2021-01-07 12:48       ` Petr Mladek
2021-01-07 15:27     ` [Buildroot] " Yann E. MORIN
2021-01-07 15:27       ` Yann E. MORIN
2021-01-07 15:27       ` Yann E. MORIN
2020-11-11 13:54 ` [PATCH 2/2] printk/console: Allow to disable console output by using console="" or console=null Petr Mladek
2020-11-11 22:52   ` Guenter Roeck
2020-11-11 23:59   ` Sergey Senozhatsky
2020-11-20 14:24 ` [PATCH 0/2] printk/console: Use ttynull when no console is available or wanted Petr Mladek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=X/gmOSvgzrPxBdIk@alley \
    --to=pmladek@suse.com \
    --cc=buildroot@busybox.net \
    --cc=gregkh@linuxfoundation.org \
    --cc=john.ogness@linutronix.de \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-snps-arc@lists.infradead.org \
    --cc=linux@roeck-us.net \
    --cc=rostedt@goodmis.org \
    --cc=sergey.senozhatsky.work@gmail.com \
    --cc=sergey.senozhatsky@gmail.com \
    --cc=shreyas.joshi@biamp.com \
    --cc=shreyasjoshi15@gmail.com \
    --cc=thomas.petazzoni@bootlin.com \
    --cc=torvalds@linux-foundation.org \
    --cc=vgupta@synopsys.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.