* [PATCH 0/3] Add back DEVNAME:0.0 console handling
@ 2024-07-03 10:06 Tony Lindgren
2024-07-03 10:06 ` [PATCH 1/3] printk: Add match_devname_and_update_preferred_console() Tony Lindgren
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Tony Lindgren @ 2024-07-03 10:06 UTC (permalink / raw)
To: Jonathan Corbet, Greg Kroah-Hartman, Jiri Slaby, Petr Mladek,
Steven Rostedt, John Ogness, Sergey Senozhatsky
Cc: Ilpo Järvinen, linux-serial, Tony Lindgren, Dhruva Gole,
Sebastian Reichel, linux-doc, linux-kernel
Hi all,
Here are the changes to add back the DEVNAME:0.0 style kernel command
line console handling.
The earlier attempt to add DEVNAME:0.0 style console handling caused a
regression to the kernel command line console ordering, and we reverted
the whole series. The fixes would have been too intrusive for the
v6.10-rc series as discussed in [0] below.
These patches are based on v6.10-rc6, and essentially the same as in [0].
Because of the rebase, I've left out Petr's Reviewed-by and Tested-by tags.
Compared to the original DEVNAME:0.0 patch series [1], things are much
simplified. We now have rewritten the printk deferred console handling
thanks to Petr, and have renamed the serial functions accordingly. And as
we are not deferring ttyS named consoles, the serial core console quirk
handling been been left out.
Regards,
Tony
[0] https://lore.kernel.org/linux-serial/20240620124541.164931-1-tony.lindgren@linux.intel.com/
[1] https://lore.kernel.org/linux-serial/20240327110021.59793-1-tony@atomide.com/
Tony Lindgren (3):
printk: Add match_devname_and_update_preferred_console()
serial: core: Add serial_base_match_and_update_preferred_console()
Documentation: kernel-parameters: Add DEVNAME:0.0 format for serial
ports
.../admin-guide/kernel-parameters.txt | 19 ++++
drivers/tty/serial/serial_base.h | 16 +++
drivers/tty/serial/serial_base_bus.c | 37 +++++++
drivers/tty/serial/serial_core.c | 4 +
include/linux/printk.h | 4 +
kernel/printk/console_cmdline.h | 1 +
kernel/printk/printk.c | 103 +++++++++++++++---
7 files changed, 169 insertions(+), 15 deletions(-)
base-commit: 22a40d14b572deb80c0648557f4bd502d7e83826
--
2.45.2
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 1/3] printk: Add match_devname_and_update_preferred_console()
2024-07-03 10:06 [PATCH 0/3] Add back DEVNAME:0.0 console handling Tony Lindgren
@ 2024-07-03 10:06 ` Tony Lindgren
2024-07-04 11:44 ` Petr Mladek
2024-07-03 10:06 ` [PATCH 2/3] serial: core: Add serial_base_match_and_update_preferred_console() Tony Lindgren
2024-07-03 10:06 ` [PATCH 3/3] Documentation: kernel-parameters: Add DEVNAME:0.0 format for serial ports Tony Lindgren
2 siblings, 1 reply; 7+ messages in thread
From: Tony Lindgren @ 2024-07-03 10:06 UTC (permalink / raw)
To: Jonathan Corbet, Greg Kroah-Hartman, Jiri Slaby, Petr Mladek,
Steven Rostedt, John Ogness, Sergey Senozhatsky
Cc: Ilpo Järvinen, linux-serial, Tony Lindgren, Dhruva Gole,
Sebastian Reichel, linux-doc, linux-kernel
Let's add match_devname_and_update_preferred_console() for driver
subsystems to call during init when the console is ready, and it's
character device name is known. For now, we use it only for the serial
layer to allow console=DEVNAME:0.0 style hardware based addressing for
consoles.
The earlier attempt on doing this caused a regression with the kernel
command line console order as it added calling __add_preferred_console()
again later on during init. A better approach was suggested by Petr where
we add the deferred console to the console_cmdline[] and update it later
on when the console is ready.
Suggested-by: Petr Mladek <pmladek@suse.com>
Co-developed-by: Petr Mladek <pmladek@suse.com>
Signed-off-by: Tony Lindgren <tony.lindgren@linux.intel.com>
---
include/linux/printk.h | 4 ++
kernel/printk/console_cmdline.h | 1 +
kernel/printk/printk.c | 103 +++++++++++++++++++++++++++-----
3 files changed, 93 insertions(+), 15 deletions(-)
diff --git a/include/linux/printk.h b/include/linux/printk.h
index 65c5184470f1..7239976698e4 100644
--- a/include/linux/printk.h
+++ b/include/linux/printk.h
@@ -60,6 +60,10 @@ static inline const char *printk_skip_headers(const char *buffer)
#define CONSOLE_LOGLEVEL_DEFAULT CONFIG_CONSOLE_LOGLEVEL_DEFAULT
#define CONSOLE_LOGLEVEL_QUIET CONFIG_CONSOLE_LOGLEVEL_QUIET
+int match_devname_and_update_preferred_console(const char *match,
+ const char *name,
+ const short idx);
+
extern int console_printk[];
#define console_loglevel (console_printk[0])
diff --git a/kernel/printk/console_cmdline.h b/kernel/printk/console_cmdline.h
index 3ca74ad391d6..0ab573b6d4dc 100644
--- a/kernel/printk/console_cmdline.h
+++ b/kernel/printk/console_cmdline.h
@@ -6,6 +6,7 @@ struct console_cmdline
{
char name[16]; /* Name of the driver */
int index; /* Minor dev. to use */
+ char devname[32]; /* DEVNAME:0.0 style device name */
bool user_specified; /* Specified by command line vs. platform */
char *options; /* Options for the driver */
#ifdef CONFIG_A11Y_BRAILLE_CONSOLE
diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
index dddb15f48d59..7d91593f0ecf 100644
--- a/kernel/printk/printk.c
+++ b/kernel/printk/printk.c
@@ -2429,18 +2429,23 @@ static void set_user_specified(struct console_cmdline *c, bool user_specified)
console_set_on_cmdline = 1;
}
-static int __add_preferred_console(const char *name, const short idx, char *options,
+static int __add_preferred_console(const char *name, const short idx,
+ const char *devname, char *options,
char *brl_options, bool user_specified)
{
struct console_cmdline *c;
int i;
+ if (!name && !devname)
+ return -EINVAL;
+
/*
* We use a signed short index for struct console for device drivers to
* indicate a not yet assigned index or port. However, a negative index
- * value is not valid for preferred console.
+ * value is not valid when the console name and index are defined on
+ * the command line.
*/
- if (idx < 0)
+ if (name && idx < 0)
return -EINVAL;
/*
@@ -2448,9 +2453,10 @@ static int __add_preferred_console(const char *name, const short idx, char *opti
* if we have a slot free.
*/
for (i = 0, c = console_cmdline;
- i < MAX_CMDLINECONSOLES && c->name[0];
+ i < MAX_CMDLINECONSOLES && (c->name[0] || c->devname[0]);
i++, c++) {
- if (strcmp(c->name, name) == 0 && c->index == idx) {
+ if ((name && strcmp(c->name, name) == 0 && c->index == idx) ||
+ (devname && strcmp(c->devname, devname) == 0)) {
if (!brl_options)
preferred_console = i;
set_user_specified(c, user_specified);
@@ -2461,7 +2467,10 @@ static int __add_preferred_console(const char *name, const short idx, char *opti
return -E2BIG;
if (!brl_options)
preferred_console = i;
- strscpy(c->name, name, sizeof(c->name));
+ if (name)
+ strscpy(c->name, name);
+ if (devname)
+ strscpy(c->devname, devname);
c->options = options;
set_user_specified(c, user_specified);
braille_set_options(c, brl_options);
@@ -2486,8 +2495,13 @@ __setup("console_msg_format=", console_msg_format_setup);
*/
static int __init console_setup(char *str)
{
- char buf[sizeof(console_cmdline[0].name) + 4]; /* 4 for "ttyS" */
- char *s, *options, *brl_options = NULL;
+ static_assert(sizeof(console_cmdline[0].devname) >= sizeof(console_cmdline[0].name) + 4);
+ char buf[sizeof(console_cmdline[0].devname)];
+ char *brl_options = NULL;
+ char *ttyname = NULL;
+ char *devname = NULL;
+ char *options;
+ char *s;
int idx;
/*
@@ -2496,17 +2510,23 @@ static int __init console_setup(char *str)
* for exactly this purpose.
*/
if (str[0] == 0 || strcmp(str, "null") == 0) {
- __add_preferred_console("ttynull", 0, NULL, NULL, true);
+ __add_preferred_console("ttynull", 0, NULL, NULL, NULL, true);
return 1;
}
if (_braille_console_setup(&str, &brl_options))
return 1;
+ /* For a DEVNAME:0.0 style console the character device is unknown early */
+ if (strchr(str, ':'))
+ devname = buf;
+ else
+ ttyname = buf;
+
/*
* Decode str into name, index, options.
*/
- if (isdigit(str[0]))
+ if (ttyname && isdigit(str[0]))
scnprintf(buf, sizeof(buf), "ttyS%s", str);
else
strscpy(buf, str);
@@ -2523,12 +2543,18 @@ static int __init console_setup(char *str)
#endif
for (s = buf; *s; s++)
- if (isdigit(*s) || *s == ',')
+ if ((ttyname && isdigit(*s)) || *s == ',')
break;
- idx = simple_strtoul(s, NULL, 10);
+
+ /* @idx will get defined when devname matches. */
+ if (devname)
+ idx = -1;
+ else
+ idx = simple_strtoul(s, NULL, 10);
+
*s = 0;
- __add_preferred_console(buf, idx, options, brl_options, true);
+ __add_preferred_console(ttyname, idx, devname, options, brl_options, true);
return 1;
}
__setup("console=", console_setup);
@@ -2548,7 +2574,51 @@ __setup("console=", console_setup);
*/
int add_preferred_console(const char *name, const short idx, char *options)
{
- return __add_preferred_console(name, idx, options, NULL, false);
+ return __add_preferred_console(name, idx, NULL, options, NULL, false);
+}
+
+/**
+ * match_devname_and_update_preferred_console - Update a preferred console
+ * when matching devname is found.
+ * @devname: DEVNAME:0.0 style device name
+ * @name: Name of the corresponding console driver, e.g. "ttyS"
+ * @idx: Console index, e.g. port number.
+ *
+ * The function checks whether a device with the given @devname is
+ * preferred via the console=DEVNAME:0.0 command line option.
+ * It fills the missing console driver name and console index
+ * so that a later register_console() call could find (match)
+ * and enable this device.
+ *
+ * It might be used when a driver subsystem initializes particular
+ * devices with already known DEVNAME:0.0 style names. And it
+ * could predict which console driver name and index this device
+ * would later get associated with.
+ *
+ * Return: 0 on success, negative error code on failure.
+ */
+int match_devname_and_update_preferred_console(const char *devname,
+ const char *name,
+ const short idx)
+{
+ struct console_cmdline *c = console_cmdline;
+ int i;
+
+ if (!devname || !strlen(devname) || !name || !strlen(name) || idx < 0)
+ return -EINVAL;
+
+ for (i = 0; i < MAX_CMDLINECONSOLES && (c->name[0] || c->devname[0]);
+ i++, c++) {
+ if (!strcmp(devname, c->devname)) {
+ pr_info("associate the preferred console \"%s\" with \"%s%d\"\n",
+ devname, name, idx);
+ strscpy(c->name, name);
+ c->index = idx;
+ return 0;
+ }
+ }
+
+ return -ENOENT;
}
bool console_suspend_enabled = true;
@@ -3318,8 +3388,11 @@ static int try_enable_preferred_console(struct console *newcon,
int i, err;
for (i = 0, c = console_cmdline;
- i < MAX_CMDLINECONSOLES && c->name[0];
+ i < MAX_CMDLINECONSOLES && (c->name[0] || c->devname[0]);
i++, c++) {
+ /* Console not yet initialized? */
+ if (!c->name[0])
+ continue;
if (c->user_specified != user_specified)
continue;
if (!newcon->match ||
--
2.45.2
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 2/3] serial: core: Add serial_base_match_and_update_preferred_console()
2024-07-03 10:06 [PATCH 0/3] Add back DEVNAME:0.0 console handling Tony Lindgren
2024-07-03 10:06 ` [PATCH 1/3] printk: Add match_devname_and_update_preferred_console() Tony Lindgren
@ 2024-07-03 10:06 ` Tony Lindgren
2024-07-03 10:06 ` [PATCH 3/3] Documentation: kernel-parameters: Add DEVNAME:0.0 format for serial ports Tony Lindgren
2 siblings, 0 replies; 7+ messages in thread
From: Tony Lindgren @ 2024-07-03 10:06 UTC (permalink / raw)
To: Jonathan Corbet, Greg Kroah-Hartman, Jiri Slaby, Petr Mladek,
Steven Rostedt, John Ogness, Sergey Senozhatsky
Cc: Ilpo Järvinen, linux-serial, Tony Lindgren, Dhruva Gole,
Sebastian Reichel, linux-doc, linux-kernel
Let's add serial_base_match_and_update_preferred_console() for consoles
using DEVNAME:0.0 style naming.
The earlier approach to add it caused issues in the kernel command line
ordering as we were calling __add_preferred_console() again for the
deferred consoles.
Signed-off-by: Tony Lindgren <tony.lindgren@linux.intel.com>
---
drivers/tty/serial/serial_base.h | 16 ++++++++++++
drivers/tty/serial/serial_base_bus.c | 37 ++++++++++++++++++++++++++++
drivers/tty/serial/serial_core.c | 4 +++
3 files changed, 57 insertions(+)
diff --git a/drivers/tty/serial/serial_base.h b/drivers/tty/serial/serial_base.h
index b6c38d2edfd4..0d50db5b660b 100644
--- a/drivers/tty/serial/serial_base.h
+++ b/drivers/tty/serial/serial_base.h
@@ -49,3 +49,19 @@ void serial_ctrl_unregister_port(struct uart_driver *drv, struct uart_port *port
int serial_core_register_port(struct uart_driver *drv, struct uart_port *port);
void serial_core_unregister_port(struct uart_driver *drv, struct uart_port *port);
+
+#ifdef CONFIG_SERIAL_CORE_CONSOLE
+
+int serial_base_match_and_update_preferred_console(struct uart_driver *drv,
+ struct uart_port *port);
+
+#else
+
+static inline
+int serial_base_match_and_update_preferred_console(struct uart_driver *drv,
+ struct uart_port *port)
+{
+ return 0;
+}
+
+#endif
diff --git a/drivers/tty/serial/serial_base_bus.c b/drivers/tty/serial/serial_base_bus.c
index 4df2a4b10445..d822499ba9d6 100644
--- a/drivers/tty/serial/serial_base_bus.c
+++ b/drivers/tty/serial/serial_base_bus.c
@@ -8,6 +8,7 @@
* The serial core bus manages the serial core controller instances.
*/
+#include <linux/cleanup.h>
#include <linux/container_of.h>
#include <linux/device.h>
#include <linux/idr.h>
@@ -204,6 +205,42 @@ void serial_base_port_device_remove(struct serial_port_device *port_dev)
put_device(&port_dev->dev);
}
+#ifdef CONFIG_SERIAL_CORE_CONSOLE
+
+/**
+ * serial_base_match_and_update_preferred_console - Match and update a preferred console
+ * @drv: Serial port device driver
+ * @port: Serial port instance
+ *
+ * Tries to match and update the preferred console for a serial port for
+ * the kernel command line option console=DEVNAME:0.0.
+ *
+ * Cannot be called early for ISA ports, depends on struct device.
+ *
+ * Return: 0 on success, negative error code on failure.
+ */
+int serial_base_match_and_update_preferred_console(struct uart_driver *drv,
+ struct uart_port *port)
+{
+ const char *port_match __free(kfree) = NULL;
+ int ret;
+
+ port_match = kasprintf(GFP_KERNEL, "%s:%d.%d", dev_name(port->dev),
+ port->ctrl_id, port->port_id);
+ if (!port_match)
+ return -ENOMEM;
+
+ ret = match_devname_and_update_preferred_console(port_match,
+ drv->dev_name,
+ port->line);
+ if (ret == -ENOENT)
+ return 0;
+
+ return ret;
+}
+
+#endif
+
static int serial_base_init(void)
{
int ret;
diff --git a/drivers/tty/serial/serial_core.c b/drivers/tty/serial/serial_core.c
index 2a8006e3d687..9a18d0b95a41 100644
--- a/drivers/tty/serial/serial_core.c
+++ b/drivers/tty/serial/serial_core.c
@@ -3422,6 +3422,10 @@ int serial_core_register_port(struct uart_driver *drv, struct uart_port *port)
if (ret)
goto err_unregister_ctrl_dev;
+ ret = serial_base_match_and_update_preferred_console(drv, port);
+ if (ret)
+ goto err_unregister_port_dev;
+
ret = serial_core_add_one_port(drv, port);
if (ret)
goto err_unregister_port_dev;
--
2.45.2
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 3/3] Documentation: kernel-parameters: Add DEVNAME:0.0 format for serial ports
2024-07-03 10:06 [PATCH 0/3] Add back DEVNAME:0.0 console handling Tony Lindgren
2024-07-03 10:06 ` [PATCH 1/3] printk: Add match_devname_and_update_preferred_console() Tony Lindgren
2024-07-03 10:06 ` [PATCH 2/3] serial: core: Add serial_base_match_and_update_preferred_console() Tony Lindgren
@ 2024-07-03 10:06 ` Tony Lindgren
2024-07-04 11:44 ` Petr Mladek
2 siblings, 1 reply; 7+ messages in thread
From: Tony Lindgren @ 2024-07-03 10:06 UTC (permalink / raw)
To: Jonathan Corbet, Greg Kroah-Hartman, Jiri Slaby, Petr Mladek,
Steven Rostedt, John Ogness, Sergey Senozhatsky
Cc: Ilpo Järvinen, linux-serial, Tony Lindgren, Dhruva Gole,
Sebastian Reichel, Tony Lindgren, linux-doc, linux-kernel
From: Tony Lindgren <tony@atomide.com>
Document the console option for DEVNAME:0.0 style addressing for serial
ports.
Suggested-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Reviewed-by: Dhruva Gole <d-gole@ti.com>
---
.../admin-guide/kernel-parameters.txt | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index 27ec49af1bf2..11e57ba2985c 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -788,6 +788,25 @@
Documentation/networking/netconsole.rst for an
alternative.
+ <DEVNAME>:<n>.<n>[,options]
+ Use the specified serial port on the serial core bus.
+ The addressing uses DEVNAME of the physical serial port
+ device, followed by the serial core controller instance,
+ and the serial port instance. The options are the same
+ as documented for the ttyS addressing above.
+
+ The mapping of the serial ports to the tty instances
+ can be viewed with:
+
+ $ ls -d /sys/bus/serial-base/devices/*:*.*/tty/*
+ /sys/bus/serial-base/devices/00:04:0.0/tty/ttyS0
+
+ In the above example, the console can be addressed with
+ console=00:04:0.0. Note that a console addressed this
+ way will only get added when the related device driver
+ is ready. The use of an earlycon parameter in addition to
+ the console may be desired for console output early on.
+
uart[8250],io,<addr>[,options]
uart[8250],mmio,<addr>[,options]
uart[8250],mmio16,<addr>[,options]
--
2.45.2
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 1/3] printk: Add match_devname_and_update_preferred_console()
2024-07-03 10:06 ` [PATCH 1/3] printk: Add match_devname_and_update_preferred_console() Tony Lindgren
@ 2024-07-04 11:44 ` Petr Mladek
2024-07-04 12:57 ` Greg Kroah-Hartman
0 siblings, 1 reply; 7+ messages in thread
From: Petr Mladek @ 2024-07-04 11:44 UTC (permalink / raw)
To: Tony Lindgren
Cc: Jonathan Corbet, Greg Kroah-Hartman, Jiri Slaby, Steven Rostedt,
John Ogness, Sergey Senozhatsky, Ilpo Järvinen, linux-serial,
Dhruva Gole, Sebastian Reichel, linux-doc, linux-kernel
On Wed 2024-07-03 13:06:08, Tony Lindgren wrote:
> Let's add match_devname_and_update_preferred_console() for driver
> subsystems to call during init when the console is ready, and it's
> character device name is known. For now, we use it only for the serial
> layer to allow console=DEVNAME:0.0 style hardware based addressing for
> consoles.
>
> The earlier attempt on doing this caused a regression with the kernel
> command line console order as it added calling __add_preferred_console()
> again later on during init. A better approach was suggested by Petr where
> we add the deferred console to the console_cmdline[] and update it later
> on when the console is ready.
>
> Suggested-by: Petr Mladek <pmladek@suse.com>
> Co-developed-by: Petr Mladek <pmladek@suse.com>
> Signed-off-by: Tony Lindgren <tony.lindgren@linux.intel.com>
Reviewed-by: Petr Mladek <pmladek@suse.com>
Best Regards,
Petr
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 3/3] Documentation: kernel-parameters: Add DEVNAME:0.0 format for serial ports
2024-07-03 10:06 ` [PATCH 3/3] Documentation: kernel-parameters: Add DEVNAME:0.0 format for serial ports Tony Lindgren
@ 2024-07-04 11:44 ` Petr Mladek
0 siblings, 0 replies; 7+ messages in thread
From: Petr Mladek @ 2024-07-04 11:44 UTC (permalink / raw)
To: Tony Lindgren
Cc: Jonathan Corbet, Greg Kroah-Hartman, Jiri Slaby, Steven Rostedt,
John Ogness, Sergey Senozhatsky, Ilpo Järvinen, linux-serial,
Tony Lindgren, Dhruva Gole, Sebastian Reichel, linux-doc,
linux-kernel
On Wed 2024-07-03 13:06:10, Tony Lindgren wrote:
> From: Tony Lindgren <tony@atomide.com>
>
> Document the console option for DEVNAME:0.0 style addressing for serial
> ports.
>
> Suggested-by: Sebastian Reichel <sre@kernel.org>
> Signed-off-by: Tony Lindgren <tony@atomide.com>
> Reviewed-by: Dhruva Gole <d-gole@ti.com>
Reviewed-by: Petr Mladek <pmladek@suse.com>
Best Regards,
Petr
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/3] printk: Add match_devname_and_update_preferred_console()
2024-07-04 11:44 ` Petr Mladek
@ 2024-07-04 12:57 ` Greg Kroah-Hartman
0 siblings, 0 replies; 7+ messages in thread
From: Greg Kroah-Hartman @ 2024-07-04 12:57 UTC (permalink / raw)
To: Petr Mladek
Cc: Tony Lindgren, Jonathan Corbet, Jiri Slaby, Steven Rostedt,
John Ogness, Sergey Senozhatsky, Ilpo Järvinen, linux-serial,
Dhruva Gole, Sebastian Reichel, linux-doc, linux-kernel
On Thu, Jul 04, 2024 at 01:44:03PM +0200, Petr Mladek wrote:
> On Wed 2024-07-03 13:06:08, Tony Lindgren wrote:
> > Let's add match_devname_and_update_preferred_console() for driver
> > subsystems to call during init when the console is ready, and it's
> > character device name is known. For now, we use it only for the serial
> > layer to allow console=DEVNAME:0.0 style hardware based addressing for
> > consoles.
> >
> > The earlier attempt on doing this caused a regression with the kernel
> > command line console order as it added calling __add_preferred_console()
> > again later on during init. A better approach was suggested by Petr where
> > we add the deferred console to the console_cmdline[] and update it later
> > on when the console is ready.
> >
> > Suggested-by: Petr Mladek <pmladek@suse.com>
> > Co-developed-by: Petr Mladek <pmladek@suse.com>
> > Signed-off-by: Tony Lindgren <tony.lindgren@linux.intel.com>
>
> Reviewed-by: Petr Mladek <pmladek@suse.com>
Thanks for the review, I'll take this through the tty tree now.
greg k-h
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2024-07-04 12:57 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-03 10:06 [PATCH 0/3] Add back DEVNAME:0.0 console handling Tony Lindgren
2024-07-03 10:06 ` [PATCH 1/3] printk: Add match_devname_and_update_preferred_console() Tony Lindgren
2024-07-04 11:44 ` Petr Mladek
2024-07-04 12:57 ` Greg Kroah-Hartman
2024-07-03 10:06 ` [PATCH 2/3] serial: core: Add serial_base_match_and_update_preferred_console() Tony Lindgren
2024-07-03 10:06 ` [PATCH 3/3] Documentation: kernel-parameters: Add DEVNAME:0.0 format for serial ports Tony Lindgren
2024-07-04 11:44 ` Petr Mladek
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).