arch/arm/boot/compressed/atags_to_fdt.c:129:5: warning: stack frame size (1344) exceeds limit (1280) in 'atags_to_fdt'

From: kernel test robot
Date: Fri Apr 21 2023 - 06:12:41 EST


Hi Ard,

FYI, the error/warning still remains.

tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 2af3e53a4dc08657f1b46f97f04ff4a0ab3cad8d
commit: 672513bf583157cc088a32e75bd850dd9f81564c ARM: decompressor: disable stack protector
date: 1 year, 5 months ago
config: arm-randconfig-r046-20230420 (https://download.01.org/0day-ci/archive/20230421/202304211812.XJkXpaNm-lkp@xxxxxxxxx/config)
compiler: clang version 17.0.0 (https://github.com/llvm/llvm-project 437b7602e4a998220871de78afcb020b9c14a661)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=672513bf583157cc088a32e75bd850dd9f81564c
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 672513bf583157cc088a32e75bd850dd9f81564c
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Link: https://lore.kernel.org/oe-kbuild-all/202304211812.XJkXpaNm-lkp@xxxxxxxxx/

All warnings (new ones prefixed by >>):

arch/arm/boot/compressed/atags_to_fdt.c:129:5: warning: no previous prototype for function 'atags_to_fdt' [-Wmissing-prototypes]
int atags_to_fdt(void *atag_list, void *fdt, int total_space)
^
arch/arm/boot/compressed/atags_to_fdt.c:129:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
int atags_to_fdt(void *atag_list, void *fdt, int total_space)
^
static
>> arch/arm/boot/compressed/atags_to_fdt.c:129:5: warning: stack frame size (1344) exceeds limit (1280) in 'atags_to_fdt' [-Wframe-larger-than]
int atags_to_fdt(void *atag_list, void *fdt, int total_space)
^
52/1344 (3.87%) spills, 1292/1344 (96.13%) variables
2 warnings generated.


vim +/atags_to_fdt +129 arch/arm/boot/compressed/atags_to_fdt.c

31d0b9f9982f8e Ben Dooks 2018-10-12 120
b90b9a38251e9c Nicolas Pitre 2011-09-13 121 /*
b90b9a38251e9c Nicolas Pitre 2011-09-13 122 * Convert and fold provided ATAGs into the provided FDT.
b90b9a38251e9c Nicolas Pitre 2011-09-13 123 *
4716e2e34a22a8 Geert Uytterhoeven 2021-05-19 124 * Return values:
b90b9a38251e9c Nicolas Pitre 2011-09-13 125 * = 0 -> pretend success
b90b9a38251e9c Nicolas Pitre 2011-09-13 126 * = 1 -> bad ATAG (may retry with another possible ATAG pointer)
b90b9a38251e9c Nicolas Pitre 2011-09-13 127 * < 0 -> error from libfdt
b90b9a38251e9c Nicolas Pitre 2011-09-13 128 */
b90b9a38251e9c Nicolas Pitre 2011-09-13 @129 int atags_to_fdt(void *atag_list, void *fdt, int total_space)

:::::: The code at line 129 was first introduced by commit
:::::: b90b9a38251e9c89c34179eccde57411ceb5f1aa ARM: zImage: allow supplementing appended DTB with traditional ATAG data

:::::: TO: Nicolas Pitre <nicolas.pitre@xxxxxxxxxx>
:::::: CC: Nicolas Pitre <nico@xxxxxxxxxxx>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests