Re: [PATCH 2/5] printk/console: Rename has_preferred_console to need_default_console

Sergey Senozhatsky
2021-11-23T02:16:00Z

On (21/11/22 14:26), Petr Mladek wrote:
> The logic around the variable @has_preferred_console made my head
> spin many times. Part of the problem is the ambiguous name.
>
> There is the variable @preferred_console. It points to the last
> non-braille console in @console_cmdline array. This array contains
> consoles preferred via the command line, device tree, or SPCR.
>
> Then there is the variable @has_preferred_console. It is set to
> "true" when @preferred_console is enabled or when a console with
> tty binding gets enabled by default.
>
> It might get reset back by the magic condition:
>
> if (!has_preferred_console || bcon || !console_drivers)
> has_preferred_console = preferred_console >= 0;
>
> It is a puzzle. Dumb explanation is that it gets re-evaluated
> when:
>
> + it was not set before (see above when it gets set)
> + there is still an early console enabled (bcon)
> + there is no console enabled (!console_drivers)
>
> This is still a puzzle.
>
> It gets more clear when we see where the value is checked. The only
> meaning of the variable is to decide whether we should try to enable
> the new console by default.

A nit: by "new console" you probably mean preferred_console. It sort
of suggests that try_enable_new_console() was not such a bad name,
may be, since we still refer to such consoles as "new" not "preferred".

> Rename the variable according to the single situation where
> the value is checked.
>
> The rename requires an inverted logic. Otherwise, it is a simple
> search & replace. It does not change the functionality.
>
> Signed-off-by: Petr Mladek <pmladek@suse.com>

Reviewed-by: Sergey Senozhatsky <senozhatsky@chromium.org>