From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wr1-f42.google.com (mail-wr1-f42.google.com [209.85.221.42]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id ECCB73C7DF0 for ; Tue, 2 Jun 2026 08:53:43 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.42 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780390426; cv=none; b=geOY0Pnt0EMdJZjVc4Uys43IermIzDfhPx9CZI/UPfMxlFDBrNg4bjb6iamuyEey9nbL5I9xDv0x/jVicIsPF9XWmjWHwUFfcYjMIipenvrsAZPChsiRqVGqZWj0StdqVWKCvGmUNCN0czSd8069RqAA9TCod3mnJfSa1/Nug4o= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780390426; c=relaxed/simple; bh=AXMHC8b6ZCYIDvbfYhK1DJjBmiAMD4EN27vrE2xW7oU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=d9Pzh3uulmRPpGJLbRB8K6faIYb9FFa3r71bAqOeeBhDTSltv2qFyPMLsu1xXFUPn3DfJ3MxYstiDfX5Nowx1mgBSPxFtb2pFzF/LNpUWBgtiWnuA/iP3oCRmlmWTY6BJTWNTNUZ8I2ZwS8vBvnNEYGMZVdMJLQ4JVZz+3rEGuU= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=aaiagkFI; arc=none smtp.client-ip=209.85.221.42 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="aaiagkFI" Received: by mail-wr1-f42.google.com with SMTP id ffacd0b85a97d-45ef29c5561so2128230f8f.0 for ; Tue, 02 Jun 2026 01:53:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1780390422; x=1780995222; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=LfmdLaYSxx3QxxirsGWUqs7dR7teltuU/UMlm9lq9mM=; b=aaiagkFIBjZfUrsCqFSjY76qeS9wlGlD9hbOX+Lm4HsxBUIxGmbiTFONq0mI/LXYC9 KDLfuFjH4hz+F5AjDHkzXS1xNk5rs2X486y9wHPLDbCRGjinBmLkzCA+4Lu3CD0CbHkS AWZJslZ4QmsZj913Xs0HL7FwJD4LGVBYipcMztK85q2c51UOd/8HC43DJSuQTBMtO8kb 4zzGIQLR33Cc7O6WGT+fpl4xTSCM2TyOVGdt9JXDrj7B4+vh5BZbMtOF9wAAYmIULFFQ aFXKZvXdQV/36XbbY/hvkmjwKXM7slZ9zMNnbHHxMnS7hACKnEUsSoObimm3CoSl1fTh eLiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780390422; x=1780995222; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=LfmdLaYSxx3QxxirsGWUqs7dR7teltuU/UMlm9lq9mM=; b=abDMzVTTCYLJZ2q/Y7/Cxjsbgeyvrimmz96Z2601hp1yNbbgbt+c0ydaQGLEh0Lc/v RwUYgJfwy2SFnA+Tc6a2E2LrMW5HkesksEHxmMinlJKK2O1/kaFdqAQ9Q6LeNliAUlNM 6w9g167cWsLJ3L/qnC5QijL2MrEjOlzQs2pfKBEHMRVuyyGFKPKbgdqakdp79ZigQ48T S34WZ4Ll1E4E0WAEVuCnFPCJID7VXRQX4md7VyVIts5YyiCJov+6y1nrs50FVgoklrB6 LDxPM3Yze6cjErsm3GDEvzXgDAkXETTzV1DU7Ps33oCTViiGngsgjOKXHoc+KUKRfzu6 PNtA== X-Forwarded-Encrypted: i=1; AFNElJ//eXrqUDJR+fRsgzb5dF66/JyZAjaIzCY+f+YtLmf1HGv3NX7CKH8lQtOOKuCyHvMvR870oCiX7B7kA6M=@vger.kernel.org X-Gm-Message-State: AOJu0Yyt0tjiK6tAU65PDyxoC9KKufSAvemoybYotxJ/0cQ43/Si6GNr 6ktP5iw+4XZudt4dYZbTV4G1rnIf0DZDhBc35/5fS+R2DZ7tfExw42BGdC1ktLKzJwk= X-Gm-Gg: Acq92OHp1VzHrikGHbAhjJixw9Ss6WFGlhTpdcIWfxr7T3nI0LTYPm03Xw9+wsu6+DM 7HDnnkb8QJ9TL4qrv5L2YhQZorgBSHbg1WOQKs8voa5cknAMF7dYOdHNOl8a3Ldvr7PZsLLuzaS q1Iaat4AzcilIyqjgrKQUdGbbw0Mzn0yf2JZ5QvdH5s1/b9FIAxlD5fGPrsJPgrdXszpIRVvIjV AdAH4IL/KQx75GagBFtM4iokjw4o7sVKL0aV5kErkS6RLvsbsPnvjDUyqiwbQ/wrnltTLIxwXiw 09+D77Aqd+GuSn8w3XdT5nyFXCl4xh7nm9nplUjN/DkepljgbjhnOOFexGtwqzXkPv2fxXr6gNp /i5rk7pLDQCHX7pWFyccBW2TgWqR7hpoE6nRB4IO7rBrWb/OLfR/lr65s/yWi1PXwtQY6W34KKS qERz0UzIXDLSeZFdvUztdvgMR4bek2YaOQ1X7y X-Received: by 2002:a05:600c:828c:b0:490:ade0:6129 with SMTP id 5b1f17b1804b1-490ade061c8mr102198385e9.33.1780390422257; Tue, 02 Jun 2026 01:53:42 -0700 (PDT) Received: from pathway.suse.cz ([176.114.240.130]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-490b0e3431bsm49258355e9.12.2026.06.02.01.53.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 02 Jun 2026 01:53:41 -0700 (PDT) From: Petr Mladek To: John Ogness Cc: Sergey Senozhatsky , Steven Rostedt , Marcos Paulo de Souza , Chris Down , linux-kernel@vger.kernel.org, Petr Mladek Subject: [PATCH v3 01/11] printk: Rename struct console_cmdline to preferred_console Date: Tue, 2 Jun 2026 10:53:02 +0200 Message-ID: <20260602085312.228251-2-pmladek@suse.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260602085312.228251-1-pmladek@suse.com> References: <20260602085312.228251-1-pmladek@suse.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The structure 'console_cmdline' was originally intended to store details about consoles defined on the kernel command line. However, its usage has since expanded; it now stores information for consoles preferred via SPCR, device tree, or by particular platforms, e.g. XEN. The current naming is misleading as it implies the configuration only originates from the command line. Rename the structure and associated artifacts to better reflect their current purpose, for example: - struct console_cmdline c -> struct preferred_console pc - console_cmdline[] -> preferred_consoles[] - console_cmdline.h -> console_register.h - c -> pc Additionally, renaming the header file to console_register.h would eventually allow to decouple console registration logic from the monolithic printk.c. Finally, renaming the local variable from "c" to "pc" helps to distinguish it from struct console variables. Note that "c" is used for struct console in some code, for example see vt_console_device() function definition. No functional changes. Signed-off-by: Petr Mladek Acked-by: Chris Down Acked-by: Marcos Paulo de Souza Reviewed-by: John Ogness --- kernel/printk/braille.c | 10 +-- kernel/printk/braille.h | 10 +-- .../{console_cmdline.h => console_register.h} | 6 +- kernel/printk/printk.c | 87 ++++++++++--------- 4 files changed, 58 insertions(+), 55 deletions(-) rename kernel/printk/{console_cmdline.h => console_register.h} (83%) diff --git a/kernel/printk/braille.c b/kernel/printk/braille.c index 17a9591e54ff..9d21a2bb1d38 100644 --- a/kernel/printk/braille.c +++ b/kernel/printk/braille.c @@ -6,7 +6,7 @@ #include #include -#include "console_cmdline.h" +#include "console_register.h" #include "braille.h" int _braille_console_setup(char **str, char **brl_options) @@ -35,14 +35,14 @@ int _braille_console_setup(char **str, char **brl_options) } int -_braille_register_console(struct console *console, struct console_cmdline *c) +_braille_register_console(struct console *console, struct preferred_console *pc) { int rtn = 0; - if (c->brl_options) { + if (pc->brl_options) { console->flags |= CON_BRL; - rtn = braille_register_console(console, c->index, c->options, - c->brl_options); + rtn = braille_register_console(console, pc->index, pc->options, + pc->brl_options); } return rtn; diff --git a/kernel/printk/braille.h b/kernel/printk/braille.h index 123154f86304..55cd3178a17a 100644 --- a/kernel/printk/braille.h +++ b/kernel/printk/braille.h @@ -5,9 +5,9 @@ #ifdef CONFIG_A11Y_BRAILLE_CONSOLE static inline void -braille_set_options(struct console_cmdline *c, char *brl_options) +braille_set_options(struct preferred_console *pc, char *brl_options) { - c->brl_options = brl_options; + pc->brl_options = brl_options; } /* @@ -21,7 +21,7 @@ int _braille_console_setup(char **str, char **brl_options); int -_braille_register_console(struct console *console, struct console_cmdline *c); +_braille_register_console(struct console *console, struct preferred_console *pc); int _braille_unregister_console(struct console *console); @@ -29,7 +29,7 @@ _braille_unregister_console(struct console *console); #else static inline void -braille_set_options(struct console_cmdline *c, char *brl_options) +braille_set_options(struct preferred_console *pc, char *brl_options) { } @@ -40,7 +40,7 @@ _braille_console_setup(char **str, char **brl_options) } static inline int -_braille_register_console(struct console *console, struct console_cmdline *c) +_braille_register_console(struct console *console, struct preferred_console *pc) { return 0; } diff --git a/kernel/printk/console_cmdline.h b/kernel/printk/console_register.h similarity index 83% rename from kernel/printk/console_cmdline.h rename to kernel/printk/console_register.h index 0ab573b6d4dc..9ab3e1cc749b 100644 --- a/kernel/printk/console_cmdline.h +++ b/kernel/printk/console_register.h @@ -1,8 +1,8 @@ /* SPDX-License-Identifier: GPL-2.0 */ -#ifndef _CONSOLE_CMDLINE_H -#define _CONSOLE_CMDLINE_H +#ifndef _CONSOLE_REGISTER_H +#define _CONSOLE_REGISTER_H -struct console_cmdline +struct preferred_console { char name[16]; /* Name of the driver */ int index; /* Minor dev. to use */ diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c index 0323149548f6..f1e2bc74f1c0 100644 --- a/kernel/printk/printk.c +++ b/kernel/printk/printk.c @@ -58,7 +58,7 @@ #include #include "printk_ringbuffer.h" -#include "console_cmdline.h" +#include "console_register.h" #include "braille.h" #include "internal.h" @@ -362,9 +362,9 @@ static int console_locked; * Array of consoles built from command line options (console=) */ -#define MAX_CMDLINECONSOLES 8 +#define MAX_PREFERRED_CONSOLES 8 -static struct console_cmdline console_cmdline[MAX_CMDLINECONSOLES]; +static struct preferred_console preferred_consoles[MAX_PREFERRED_CONSOLES]; static int preferred_console = -1; int console_set_on_cmdline; @@ -2544,16 +2544,16 @@ asmlinkage __visible void early_printk(const char *fmt, ...) } #endif -static void set_user_specified(struct console_cmdline *c, bool user_specified) +static void set_user_specified(struct preferred_console *pc, bool user_specified) { if (!user_specified) return; /* - * @c console was defined by the user on the command line. + * @pc console was defined by the user on the command line. * Do not clear when added twice also by SPCR or the device tree. */ - c->user_specified = true; + pc->user_specified = true; /* At least one console defined by the user on the command line. */ console_set_on_cmdline = 1; } @@ -2562,7 +2562,7 @@ 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; + struct preferred_console *pc; int i; if (!name && !devname) @@ -2581,30 +2581,30 @@ static int __add_preferred_console(const char *name, const short idx, * See if this tty is not yet registered, and * if we have a slot free. */ - for (i = 0, c = console_cmdline; - i < MAX_CMDLINECONSOLES && (c->name[0] || c->devname[0]); - i++, c++) { - if ((name && strcmp(c->name, name) == 0 && c->index == idx) || - (devname && strcmp(c->devname, devname) == 0)) { + for (i = 0, pc = preferred_consoles; + i < MAX_PREFERRED_CONSOLES && (pc->name[0] || pc->devname[0]); + i++, pc++) { + if ((name && strcmp(pc->name, name) == 0 && pc->index == idx) || + (devname && strcmp(pc->devname, devname) == 0)) { if (!brl_options) preferred_console = i; - set_user_specified(c, user_specified); + set_user_specified(pc, user_specified); return 0; } } - if (i == MAX_CMDLINECONSOLES) + if (i == MAX_PREFERRED_CONSOLES) return -E2BIG; if (!brl_options) preferred_console = i; if (name) - strscpy(c->name, name); + strscpy(pc->name, name); if (devname) - strscpy(c->devname, devname); - c->options = options; - set_user_specified(c, user_specified); - braille_set_options(c, brl_options); + strscpy(pc->devname, devname); + pc->options = options; + set_user_specified(pc, user_specified); + braille_set_options(pc, brl_options); - c->index = idx; + pc->index = idx; return 0; } @@ -2624,8 +2624,7 @@ __setup("console_msg_format=", console_msg_format_setup); */ static int __init console_setup(char *str) { - static_assert(sizeof(console_cmdline[0].devname) >= sizeof(console_cmdline[0].name) + 4); - char buf[sizeof(console_cmdline[0].devname)]; + char buf[sizeof(preferred_consoles[0].devname)]; char *brl_options = NULL; char *ttyname = NULL; char *devname = NULL; @@ -2633,6 +2632,10 @@ static int __init console_setup(char *str) char *s; int idx; + static_assert(sizeof(preferred_consoles[0].devname) >= + sizeof(preferred_consoles[0].name) + 4); + + /* * console="" or console=null have been suggested as a way to * disable console output. Use ttynull that has been created @@ -2730,19 +2733,19 @@ int match_devname_and_update_preferred_console(const char *devname, const char *name, const short idx) { - struct console_cmdline *c = console_cmdline; + struct preferred_console *pc = preferred_consoles; 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)) { + for (i = 0; i < MAX_PREFERRED_CONSOLES && (pc->name[0] || pc->devname[0]); + i++, pc++) { + if (!strcmp(devname, pc->devname)) { pr_info("associate the preferred console \"%s\" with \"%s%d\"\n", devname, name, idx); - strscpy(c->name, name); - c->index = idx; + strscpy(pc->name, name); + pc->index = idx; return 0; } } @@ -3897,33 +3900,33 @@ static int console_call_setup(struct console *newcon, char *options) static int try_enable_preferred_console(struct console *newcon, bool user_specified) { - struct console_cmdline *c; + struct preferred_console *pc; int i, err; - for (i = 0, c = console_cmdline; - i < MAX_CMDLINECONSOLES && (c->name[0] || c->devname[0]); - i++, c++) { + for (i = 0, pc = preferred_consoles; + i < MAX_PREFERRED_CONSOLES && (pc->name[0] || pc->devname[0]); + i++, pc++) { /* Console not yet initialized? */ - if (!c->name[0]) + if (!pc->name[0]) continue; - if (c->user_specified != user_specified) + if (pc->user_specified != user_specified) continue; if (!newcon->match || - newcon->match(newcon, c->name, c->index, c->options) != 0) { + newcon->match(newcon, pc->name, pc->index, pc->options) != 0) { /* default matching */ - BUILD_BUG_ON(sizeof(c->name) != sizeof(newcon->name)); - if (strcmp(c->name, newcon->name) != 0) + BUILD_BUG_ON(sizeof(pc->name) != sizeof(newcon->name)); + if (strcmp(pc->name, newcon->name) != 0) continue; if (newcon->index >= 0 && - newcon->index != c->index) + newcon->index != pc->index) continue; if (newcon->index < 0) - newcon->index = c->index; + newcon->index = pc->index; - if (_braille_register_console(newcon, c)) + if (_braille_register_console(newcon, pc)) return 0; - err = console_call_setup(newcon, c->options); + err = console_call_setup(newcon, pc->options); if (err) return err; } @@ -3938,7 +3941,7 @@ static int try_enable_preferred_console(struct console *newcon, * without matching. Accept the pre-enabled consoles only when match() * and setup() had a chance to be called. */ - if (newcon->flags & CON_ENABLED && c->user_specified == user_specified) + if (newcon->flags & CON_ENABLED && pc->user_specified == user_specified) return 0; return -ENOENT; -- 2.54.0