From: kernel test robot <lkp@intel.com>
To: Breno Leitao <leitao@debian.org>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
"Masami Hiramatsu (Google)" <mhiramat@kernel.org>
Subject: [trace:bootconfig/for-next 16/16] init/main.c:437:20: warning: stack frame size (4192) exceeds limit (2048) in 'bootconfig_apply_early_params'
Date: Wed, 25 Mar 2026 10:37:25 +0800 [thread overview]
Message-ID: <202603251010.5Ui0yrB2-lkp@intel.com> (raw)
tree: https://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace bootconfig/for-next
head: 1a427f2a710583872b6176ea8378e0a1a8719fc4
commit: 1a427f2a710583872b6176ea8378e0a1a8719fc4 [16/16] bootconfig: Apply early options from embedded config
config: loongarch-allmodconfig (https://download.01.org/0day-ci/archive/20260325/202603251010.5Ui0yrB2-lkp@intel.com/config)
compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260325/202603251010.5Ui0yrB2-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202603251010.5Ui0yrB2-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> init/main.c:437:20: warning: stack frame size (4192) exceeds limit (2048) in 'bootconfig_apply_early_params' [-Wframe-larger-than]
437 | static void __init bootconfig_apply_early_params(void)
| ^
1 warning generated.
vim +/bootconfig_apply_early_params +437 init/main.c
416
417 /*
418 * do_early_param() is defined later in this file but called from
419 * bootconfig_apply_early_params() below, so we need a forward declaration.
420 */
421 static int __init do_early_param(char *param, char *val,
422 const char *unused, void *arg);
423
424 /*
425 * bootconfig_apply_early_params - dispatch kernel.* keys from the embedded
426 * bootconfig as early_param() calls.
427 *
428 * early_param() handlers must run before most of the kernel initialises
429 * (e.g. before the GIC driver reads irqchip.gicv3_pseudo_nmi). A bootconfig
430 * attached to the initrd arrives too late for this because the initrd is not
431 * mapped yet when early params are processed. The embedded bootconfig lives
432 * in the kernel image itself (.init.data), so it is always reachable.
433 *
434 * This function is called from setup_boot_config() which runs in
435 * start_kernel() before parse_early_param(), making the timing correct.
436 */
> 437 static void __init bootconfig_apply_early_params(void)
438 {
439 char val_buf[COMMAND_LINE_SIZE];
440 struct xbc_node *knode, *root;
441 const char *val;
442
443 root = xbc_find_node("kernel");
444 if (!root)
445 return;
446
447 /*
448 * Keys that do not match any early_param() handler are silently
449 * ignored — do_early_param() always returns 0.
450 */
451 xbc_node_for_each_key_value(root, knode, val) {
452 if (xbc_node_compose_key_after(root, knode, xbc_namebuf, XBC_KEYLEN_MAX) < 0)
453 continue;
454
455 if (!val) {
456 do_early_param(xbc_namebuf, NULL, NULL, NULL);
457 continue;
458 }
459
460 /*
461 * We need to copy const char *val to a char pointer,
462 * which is what do_early_param() need, given it might
463 * call strsep(), strtok() later.
464 */
465 strscpy(val_buf, val, sizeof(val_buf));
466 do_early_param(xbc_namebuf, val_buf, NULL, NULL);
467 }
468 }
469
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next reply other threads:[~2026-03-25 2:37 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-25 2:37 kernel test robot [this message]
2026-03-25 6:52 ` [trace:bootconfig/for-next 16/16] init/main.c:437:20: warning: stack frame size (4192) exceeds limit (2048) in 'bootconfig_apply_early_params' Masami Hiramatsu
2026-03-25 9:55 ` Breno Leitao
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202603251010.5Ui0yrB2-lkp@intel.com \
--to=lkp@intel.com \
--cc=leitao@debian.org \
--cc=llvm@lists.linux.dev \
--cc=mhiramat@kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox