[v2,1/3] printk: Constify name for add_preferred_console()

Message ID 20230912110350.14482-2-tony@atomide.com
State New
Headers
Series Add support for DEVNAME:0.0 style hardware based addressing |

Commit Message

Tony Lindgren Sept. 12, 2023, 11:03 a.m. UTC
  While adding a preferred console handling for serial_core for serial port
hardware based device addressing, Jiri suggested we constify name for
add_preferred_console(). The gets copied anyways. This allows serial core
to add a preferred console using serial drv->dev_name without copying it.

Note that constifying options causes changes all over the place because of
struct console for match().

Cc: John Ogness <john.ogness@linutronix.de>
Cc: Petr Mladek <pmladek@suse.com>
Cc: Sergey Senozhatsky <senozhatsky@chromium.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
Suggested-by: Jiri Slaby <jirislaby@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 include/linux/console.h | 2 +-
 kernel/printk/printk.c  | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)
  

Comments

Petr Mladek Sept. 20, 2023, 10:17 a.m. UTC | #1
On Tue 2023-09-12 14:03:43, Tony Lindgren wrote:
> While adding a preferred console handling for serial_core for serial port
> hardware based device addressing, Jiri suggested we constify name for
> add_preferred_console(). The gets copied anyways. This allows serial core
> to add a preferred console using serial drv->dev_name without copying it.
> 
> Note that constifying options causes changes all over the place because of
> struct console for match().
> 
> Cc: John Ogness <john.ogness@linutronix.de>
> Cc: Petr Mladek <pmladek@suse.com>
> Cc: Sergey Senozhatsky <senozhatsky@chromium.org>
> Cc: Steven Rostedt <rostedt@goodmis.org>
> Suggested-by: Jiri Slaby <jirislaby@kernel.org>
> Signed-off-by: Tony Lindgren <tony@atomide.com>

Makes sense:

Reviewed-by: Petr Mladek <pmladek@suse.com>

I assume that this patch would via Greg's tree together with
the rest of the patchset. Please, tell me if you would prefer to
queue this via printk tree.

Best Regards,
Petr
  
Ilpo Järvinen Sept. 20, 2023, 10:56 a.m. UTC | #2
On Wed, 20 Sep 2023, Petr Mladek wrote:

> On Tue 2023-09-12 14:03:43, Tony Lindgren wrote:
> > While adding a preferred console handling for serial_core for serial port
> > hardware based device addressing, Jiri suggested we constify name for
> > add_preferred_console(). The gets copied anyways. This allows serial core

Hi Tony,

"The gets copied" seems to lack a word (name?).
  
Tony Lindgren Sept. 28, 2023, 6:58 a.m. UTC | #3
Hi,

* Petr Mladek <pmladek@suse.com> [230920 10:17]:
> I assume that this patch would via Greg's tree together with
> the rest of the patchset. Please, tell me if you would prefer to
> queue this via printk tree.

Thanks looks like I'll have two other printk console related patches coming
related to after working on changes related to Jiri's serial core comments.
I'm hoping to repost v3 patchset within a few days, so maybe let's wait for
that and see if something should be merged before the whole set of patches.

Regards,

Tony
  

Patch

diff --git a/include/linux/console.h b/include/linux/console.h
--- a/include/linux/console.h
+++ b/include/linux/console.h
@@ -337,7 +337,7 @@  enum con_flush_mode {
 	CONSOLE_REPLAY_ALL,
 };
 
-extern int add_preferred_console(char *name, int idx, char *options);
+extern int add_preferred_console(const char *name, int idx, char *options);
 extern void console_force_preferred_locked(struct console *con);
 extern void register_console(struct console *);
 extern int unregister_console(struct console *);
diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
--- a/kernel/printk/printk.c
+++ b/kernel/printk/printk.c
@@ -2400,7 +2400,7 @@  static void set_user_specified(struct console_cmdline *c, bool user_specified)
 	console_set_on_cmdline = 1;
 }
 
-static int __add_preferred_console(char *name, int idx, char *options,
+static int __add_preferred_console(const char *name, int idx, char *options,
 				   char *brl_options, bool user_specified)
 {
 	struct console_cmdline *c;
@@ -2509,7 +2509,7 @@  __setup("console=", console_setup);
  * commonly to provide a default console (ie from PROM variables) when
  * the user has not supplied one.
  */
-int add_preferred_console(char *name, int idx, char *options)
+int add_preferred_console(const char *name, int idx, char *options)
 {
 	return __add_preferred_console(name, idx, options, NULL, false);
 }