Thread (53 messages) 53 messages, 9 authors, 13d ago

Re: [PATCH 19/28] x86/setup: Use snprintf() to concatenate builtin and boot command lines

From: sashiko-bot@kernel.org
Date: 2026-09-17 07:38:22
Also in: dri-devel, intel-xe, linux-devicetree, linux-scsi

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] x86/setup: stack frame size exceeded in setup_arch()
--

commit 77de53f82acddaba0d28234aa8f72d7d99b20943
Author: Bill Wendling [off-list ref]

x86/setup: Use snprintf() to concatenate builtin and boot command lines

This commit replaces multiple strlcat() calls with a single snprintf()
call in setup_arch() to concatenate the builtin and boot command lines.
It uses a temporary buffer to avoid undefined behavior from overlapping
source and destination buffers, preparing for the removal of the
deprecated strlcat() API.

Link: https://github.com/KSPP/linux/issues/370 [1]
quoted hunk ↗ jump to hunk
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -916,9 +916,11 @@ void __init setup_arch(char **cmdline_p)
 #else
 	if (builtin_cmdline[0]) {
 		/* append boot loader cmdline to builtin */
-		strlcat(builtin_cmdline, " ", COMMAND_LINE_SIZE);
-		strlcat(builtin_cmdline, boot_command_line, COMMAND_LINE_SIZE);
-		strscpy(boot_command_line, builtin_cmdline, COMMAND_LINE_SIZE);
+		char tmp[COMMAND_LINE_SIZE];
[Severity: Low]
Will this unconditionally trigger a -Wframe-larger-than warning during build?

COMMAND_LINE_SIZE is 2048 on x86_64, which matches the default warning
threshold for stack frames (CONFIG_FRAME_WARN). 

Combined with the function overhead and other local variables, allocating
this array directly on the stack will reliably exceed the limit and break
builds that have CONFIG_WERROR enabled.
+
+		snprintf(tmp, COMMAND_LINE_SIZE, "%s %s", builtin_cmdline, boot_command_line);
+		strscpy(builtin_cmdline, tmp, COMMAND_LINE_SIZE);
+		strscpy(boot_command_line, tmp, COMMAND_LINE_SIZE);
 	}
 #endif
 	builtin_cmdline_added = true;
-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260915081910.4142719-1-morbo@google.com?part=19
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help