[PATCH printk v3 24/40] tty: nfcon: use console_is_registered()

From: John Ogness
Date: Mon Nov 07 2022 - 09:18:52 EST


Currently CON_ENABLED is being (mis)used to identify if the console
has been registered. This is not reliable because it can be set even
though registration failed or it can be unset, even though the console
is registered.

Instead, use console_is_registered().

Signed-off-by: John Ogness <john.ogness@xxxxxxxxxxxxx>
---
arch/m68k/emu/nfcon.c | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/arch/m68k/emu/nfcon.c b/arch/m68k/emu/nfcon.c
index 557d60867f98..292669fa480f 100644
--- a/arch/m68k/emu/nfcon.c
+++ b/arch/m68k/emu/nfcon.c
@@ -49,14 +49,14 @@ static void nfcon_write(struct console *con, const char *str,
static struct tty_driver *nfcon_device(struct console *con, int *index)
{
*index = 0;
- return (con->flags & CON_ENABLED) ? nfcon_tty_driver : NULL;
+ return console_is_registered(con) ? nfcon_tty_driver : NULL;
}

static struct console nf_console = {
.name = "nfcon",
.write = nfcon_write,
.device = nfcon_device,
- .flags = CON_PRINTBUFFER,
+ .flags = CON_PRINTBUFFER | CON_ENABLED,
.index = -1,
};

@@ -106,10 +106,8 @@ static int __init nf_debug_setup(char *arg)
return 0;

stderr_id = nf_get_id("NF_STDERR");
- if (stderr_id) {
- nf_console.flags |= CON_ENABLED;
+ if (stderr_id)
register_console(&nf_console);
- }

return 0;
}
@@ -151,7 +149,7 @@ static int __init nfcon_init(void)

nfcon_tty_driver = driver;

- if (!(nf_console.flags & CON_ENABLED))
+ if (!console_is_registered(&nf_console))
register_console(&nf_console);

return 0;
--
2.30.2