From: Petr Mladek <pmladek@suse.com>
To: John Ogness <john.ogness@linutronix.de>
Cc: Sergey Senozhatsky <senozhatsky@chromium.org>,
Steven Rostedt <rostedt@goodmis.org>,
Marcos Paulo de Souza <mpdesouza@suse.com>,
Chris Down <chris@chrisdown.name>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 6/8] printk: Do not set Braille console as preferred_console
Date: Thu, 19 Feb 2026 15:55:27 +0100 [thread overview]
Message-ID: <aZckXzegE6fNkjcP@pathway.suse.cz> (raw)
In-Reply-To: <87qzqkd64x.fsf@jogness.linutronix.de>
On Mon 2026-02-16 17:13:10, John Ogness wrote:
> On 2026-02-06, Petr Mladek <pmladek@suse.com> wrote:
> > diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
> > index 279b36ef90bd..eb224eaace64 100644
> > --- a/kernel/printk/printk.c
> > +++ b/kernel/printk/printk.c
> > @@ -365,6 +365,7 @@ static int console_locked;
> > static struct preferred_console preferred_consoles[MAX_PREFERRED_CONSOLES];
> >
> > static int preferred_dev_console = -1;
> > +static int preferred_dev_console_prev = -1;
> > static bool want_braille_console;
> > int console_set_on_cmdline;
> > EXPORT_SYMBOL(console_set_on_cmdline);
> > @@ -2555,10 +2556,23 @@ static int update_preferred_console(int i, const char *name, const short idx,
> >
> > braille_update_options(pc, brl_options);
> >
> > - if (brl_options)
> > + if (brl_options) {
> > want_braille_console = true;
> > - else
> > + /*
> > + * This console name will always get enabled as Braille
> > + * console. It takes special code paths in register_console().
> > + * Do not treat it as a normal preferred_console.
> > + */
> > + if (preferred_dev_console == i)
> > + preferred_dev_console = preferred_dev_console_prev;
>
> I am wondering if in this case it should also do:
>
> preferred_dev_console_prev = -1;
>
> to make sure that @preferred_dev_console never ends up at a Braille
> device.
Great catch!
> > + } else {
> > + /*
> > + * Only the VisioBraille device is supported at the moment.
> > + * One level history should be enough.
> > + */
> > + preferred_dev_console_prev = preferred_dev_console;
> > preferred_dev_console = i;
> > + }
We actually also need to prevent setting "preferred_dev_console" when
the same console has been preferred as Braille before, for example:
console=brl,ttyS0,115200 console=ttyS0,115200
One might argue that the later definition should win. But it would
be a regression.
The motivation to keep the current behavior is that the Braille console
is special. IMHO, it should always win. Otherwise, the user might have
hard times to debug the problem.
My new version of this code is:
/*
* The last preferred console should get associated with /dev/console.
* Except for the Braille console which can't get associated with
* /dev/console. One level history should be enough because only one,
* the VisioBraille device, is supported at the moment.
*/
if (brl_options) {
want_braille_console = true;
if (preferred_dev_console == i) {
preferred_dev_console = preferred_dev_console_prev;
preferred_dev_console_prev = -1;
}
} else if (!is_braille_console_preferred(pc)) {
preferred_dev_console_prev = preferred_dev_console;
preferred_dev_console = i;
}
Best Regards,
Petr
next prev parent reply other threads:[~2026-02-19 14:55 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-06 16:49 [PATCH 0/8] printk: Clean up preferred console handling Petr Mladek
2026-02-06 16:49 ` [PATCH 1/8] printk: Rename struct console_cmdline to preferred_console Petr Mladek
2026-02-19 14:40 ` Chris Down
2026-02-19 18:34 ` Marcos Paulo de Souza
2026-02-06 16:49 ` [PATCH 2/8] printk: Rename preferred_console to preferred_dev_console Petr Mladek
2026-02-19 14:41 ` Chris Down
2026-02-19 18:37 ` Marcos Paulo de Souza
2026-02-06 16:49 ` [PATCH 3/8] printk: Separate code for adding/updating preferred console metadata Petr Mladek
2026-02-16 14:05 ` John Ogness
2026-02-19 12:46 ` Petr Mladek
2026-02-19 14:06 ` John Ogness
2026-02-19 14:48 ` Chris Down
2026-02-19 16:51 ` Petr Mladek
2026-02-06 16:49 ` [PATCH 4/8] printk: Cleanup _braille_(un)register_console() wrappers Petr Mladek
2026-02-19 14:49 ` Chris Down
2026-02-19 18:50 ` Marcos Paulo de Souza
2026-02-06 16:49 ` [PATCH 5/8] printk: Try to register each console as Braille first Petr Mladek
2026-02-19 14:59 ` Chris Down
2026-02-19 16:59 ` Petr Mladek
2026-02-20 4:52 ` Chris Down
2026-02-20 11:43 ` Petr Mladek
2026-02-06 16:50 ` [PATCH 6/8] printk: Do not set Braille console as preferred_console Petr Mladek
2026-02-16 16:07 ` John Ogness
2026-02-19 14:55 ` Petr Mladek [this message]
2026-02-19 15:35 ` John Ogness
2026-02-19 15:03 ` Chris Down
2026-02-06 16:50 ` [PATCH 7/8] printk: Handle pre-enabled consoles directly in register_console() Petr Mladek
2026-02-19 15:03 ` Chris Down
2026-02-06 16:50 ` [PATCH 8/8] printk: Try enable preferred consoles only when there are any Petr Mladek
2026-02-19 15:16 ` Chris Down
2026-02-17 8:56 ` [PATCH 0/8] printk: Clean up preferred console handling John Ogness
2026-02-19 15:20 ` Chris Down
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=aZckXzegE6fNkjcP@pathway.suse.cz \
--to=pmladek@suse.com \
--cc=chris@chrisdown.name \
--cc=john.ogness@linutronix.de \
--cc=linux-kernel@vger.kernel.org \
--cc=mpdesouza@suse.com \
--cc=rostedt@goodmis.org \
--cc=senozhatsky@chromium.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome