From: adamsimonelli@gmail.com
To: linux-serial@vger.kernel.org, linux-kernel@vger.kernel.org,
Jiri Slaby <jirislaby@kernel.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Adam Simonelli <adamsimonelli@gmail.com>
Subject: [PATCH v2 1/2] ttynull: Add an option to allow ttynull to be used as a console device
Date: Sun, 16 Feb 2025 23:07:47 -0500 [thread overview]
Message-ID: <20250217040748.2017975-2-adamsimonelli@gmail.com> (raw)
In-Reply-To: <20250217040748.2017975-1-adamsimonelli@gmail.com>
From: Adam Simonelli <adamsimonelli@gmail.com>
Add a config option CONFIG_NULL_TTY_CONSOLE that will have ttynull be
initialized by console_initcall() and selected as a possible console
device.
Signed-off-by: Adam Simonelli <adamsimonelli@gmail.com>
---
drivers/tty/Kconfig | 18 +++++++++++++++++-
drivers/tty/ttynull.c | 16 +++++++++++++++-
2 files changed, 32 insertions(+), 2 deletions(-)
diff --git a/drivers/tty/Kconfig b/drivers/tty/Kconfig
index 63a494d36a1f..afe4e7722d4c 100644
--- a/drivers/tty/Kconfig
+++ b/drivers/tty/Kconfig
@@ -383,7 +383,23 @@ config NULL_TTY
available or desired.
In order to use this driver, you should redirect the console to this
- TTY, or boot the kernel with console=ttynull.
+ TTY, boot the kernel with console=ttynull, or enable
+ CONFIG_NULL_TTY_CONSOLE.
+
+ If unsure, say N.
+
+config NULL_TTY_CONSOLE
+ bool "Supports /dev/ttynull as a console automatically"
+ depends on NULL_TTY=y && !VT_CONSOLE
+ help
+ Say Y here if you want the NULL TTY to be used as a /dev/console
+ device.
+
+ This is useful for userspace applications that expect a working
+ console device, without changing the kernel boot options, such as a
+ distribuition or environment that historically had CONFIG_VT_CONSOLE
+ enabled, and have now disabled it, but still need /dev/console to be
+ working for userspace applications.
If unsure, say N.
diff --git a/drivers/tty/ttynull.c b/drivers/tty/ttynull.c
index 6b2f7208b564..8ba629ae426b 100644
--- a/drivers/tty/ttynull.c
+++ b/drivers/tty/ttynull.c
@@ -57,6 +57,10 @@ static struct tty_driver *ttynull_device(struct console *c, int *index)
static struct console ttynull_console = {
.name = "ttynull",
.device = ttynull_device,
+#ifdef CONFIG_NULL_TTY_CONSOLE
+ .index = -1,
+ .flags = CON_PRINTBUFFER,
+#endif
};
static int __init ttynull_init(void)
@@ -90,10 +94,20 @@ static int __init ttynull_init(void)
}
ttynull_driver = driver;
- register_console(&ttynull_console);
+ if (!console_is_registered(&ttynull_console))
+ register_console(&ttynull_console);
+
+ return 0;
+}
+#ifdef CONFIG_NULL_TTY_CONSOLE
+static int __init ttynull_register(void)
+{
+ register_console(&ttynull_console);
return 0;
}
+console_initcall(ttynull_register);
+#endif
static void __exit ttynull_exit(void)
{
--
2.45.2
next prev parent reply other threads:[~2025-02-17 4:08 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-17 4:07 [PATCH v2 0/2] Optionally allow ttynull to be selected as a default console adamsimonelli
2025-02-17 4:07 ` adamsimonelli [this message]
2025-02-19 14:00 ` [PATCH v2 1/2] ttynull: Add an option to allow ttynull to be used as a console device Greg Kroah-Hartman
2025-02-23 5:08 ` Adam Simonelli
2025-02-17 4:07 ` [PATCH v2 2/2] tty: Change order of ttynull to be loaded sooner adamsimonelli
2025-02-19 14:03 ` Greg Kroah-Hartman
2025-02-23 4:56 ` Adam Simonelli
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=20250217040748.2017975-2-adamsimonelli@gmail.com \
--to=adamsimonelli@gmail.com \
--cc=gregkh@linuxfoundation.org \
--cc=jirislaby@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-serial@vger.kernel.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 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.