summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLillian Berry <lillian@star-ark.net>2026-01-11 07:56:35 -0500
committerAndrew Morton <akpm@linux-foundation.org>2026-01-26 19:07:14 -0800
commita906f3ae4423d35c9804c8ec3a0db96ce9b54d44 (patch)
tree446c4509d6b342d9b6a4bde3904bffedc74c6c43
parent4cc67b048459bebb7a60b693044ec83fb853eba1 (diff)
init/main.c: check if rdinit was explicitly set before printing warning
The rdinit parameter is set by default, and attempted during boot even if not specified in the command line. Only print the warning about rdinit being inaccessible if the rdinit value was found in command line; it's just noise otherwise. [akpm@linux-foundation.org: move ramdisk_execute_command_set into __initdata] Link: https://lkml.kernel.org/r/20260111125635.53682-1-lillian@star-ark.net Signed-off-by: Lillian Berry <lillian@star-ark.net> Cc: Ahmad Fatoum <a.fatoum@pengutronix.de> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Al Viro <viro@zeniv.linux.org.uk> Cc: Douglas Anderson <dianders@chromium.org> Cc: Francesco Valla <francesco@valla.it> Cc: Guo Weikang <guoweikang.kernel@gmail.com> Cc: Huacai Chen <chenhuacai@kernel.org> Cc: Huan Yang <link@vivo.com> Cc: Ingo Molnar <mingo@kernel.org> Cc: "Mike Rapoport (Microsoft)" <rppt@kernel.org> Cc: Sascha Hauer <kernel@pengutronix.de> Cc: Thomas Gleixner <tglx@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-rw-r--r--init/main.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/init/main.c b/init/main.c
index b84818ad9685..4773f3bad49c 100644
--- a/init/main.c
+++ b/init/main.c
@@ -162,6 +162,7 @@ static size_t initargs_offs;
static char *execute_command;
static char *ramdisk_execute_command = "/init";
+static bool __initdata ramdisk_execute_command_set;
/*
* Used to generate warnings if static_key manipulation functions are used
@@ -623,6 +624,7 @@ static int __init rdinit_setup(char *str)
unsigned int i;
ramdisk_execute_command = str;
+ ramdisk_execute_command_set = true;
/* See "auto" comment in init_setup */
for (i = 1; i < MAX_INIT_ARGS; i++)
argv_init[i] = NULL;
@@ -1699,8 +1701,9 @@ static noinline void __init kernel_init_freeable(void)
int ramdisk_command_access;
ramdisk_command_access = init_eaccess(ramdisk_execute_command);
if (ramdisk_command_access != 0) {
- pr_warn("check access for rdinit=%s failed: %i, ignoring\n",
- ramdisk_execute_command, ramdisk_command_access);
+ if (ramdisk_execute_command_set)
+ pr_warn("check access for rdinit=%s failed: %i, ignoring\n",
+ ramdisk_execute_command, ramdisk_command_access);
ramdisk_execute_command = NULL;
prepare_namespace();
}