drivers/scsi/fcoe/fcoe_ctlr.c:1871:13: warning: stack frame size (1072) exceeds limit (1024) in 'fcoe_ctlr_recv_work'

From: kernel test robot
Date: Sat Apr 29 2023 - 06:32:04 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 89d77f71f493a3663b10fa812d17f472935d24be
commit: 54d9469bc515dc5fcbc20eecbe19cea868b70d68 fortify: Add run-time WARN for cross-field memcpy()
date: 8 months ago
config: riscv-randconfig-r015-20230429 (https://download.01.org/0day-ci/archive/20230429/202304291839.L1PvCRkL-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 riscv cross compiling tool for clang build
# apt-get install binutils-riscv-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=54d9469bc515dc5fcbc20eecbe19cea868b70d68
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 54d9469bc515dc5fcbc20eecbe19cea868b70d68
# 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=riscv olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=riscv SHELL=/bin/bash drivers/scsi/fcoe/

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/202304291839.L1PvCRkL-lkp@xxxxxxxxx/

All warnings (new ones prefixed by >>):

>> drivers/scsi/fcoe/fcoe_ctlr.c:1871:13: warning: stack frame size (1072) exceeds limit (1024) in 'fcoe_ctlr_recv_work' [-Wframe-larger-than]
static void fcoe_ctlr_recv_work(struct work_struct *recv_work)
^
677/1072 (63.15%) spills, 395/1072 (36.85%) variables
1 warning generated.


vim +/fcoe_ctlr_recv_work +1871 drivers/scsi/fcoe/fcoe_ctlr.c

97c8389d54b966 drivers/scsi/fcoe/libfcoe.c Joe Eykholt 2009-03-17 1866
97c8389d54b966 drivers/scsi/fcoe/libfcoe.c Joe Eykholt 2009-03-17 1867 /**
70b51aabf3b03f drivers/scsi/fcoe/libfcoe.c Robert Love 2009-11-03 1868 * fcoe_ctlr_recv_work() - Worker thread function for receiving FIP frames
70b51aabf3b03f drivers/scsi/fcoe/libfcoe.c Robert Love 2009-11-03 1869 * @recv_work: Handle to a FCoE controller
97c8389d54b966 drivers/scsi/fcoe/libfcoe.c Joe Eykholt 2009-03-17 1870 */
97c8389d54b966 drivers/scsi/fcoe/libfcoe.c Joe Eykholt 2009-03-17 @1871 static void fcoe_ctlr_recv_work(struct work_struct *recv_work)
97c8389d54b966 drivers/scsi/fcoe/libfcoe.c Joe Eykholt 2009-03-17 1872 {
97c8389d54b966 drivers/scsi/fcoe/libfcoe.c Joe Eykholt 2009-03-17 1873 struct fcoe_ctlr *fip;
97c8389d54b966 drivers/scsi/fcoe/libfcoe.c Joe Eykholt 2009-03-17 1874 struct sk_buff *skb;
97c8389d54b966 drivers/scsi/fcoe/libfcoe.c Joe Eykholt 2009-03-17 1875
97c8389d54b966 drivers/scsi/fcoe/libfcoe.c Joe Eykholt 2009-03-17 1876 fip = container_of(recv_work, struct fcoe_ctlr, recv_work);
1f4aed818d26eb drivers/scsi/fcoe/libfcoe.c Joe Eykholt 2009-11-03 1877 while ((skb = skb_dequeue(&fip->fip_recv_list)))
97c8389d54b966 drivers/scsi/fcoe/libfcoe.c Joe Eykholt 2009-03-17 1878 fcoe_ctlr_recv_handler(fip, skb);
97c8389d54b966 drivers/scsi/fcoe/libfcoe.c Joe Eykholt 2009-03-17 1879 }
97c8389d54b966 drivers/scsi/fcoe/libfcoe.c Joe Eykholt 2009-03-17 1880

:::::: The code at line 1871 was first introduced by commit
:::::: 97c8389d54b9665c38105ea72a428a44b97ff2f6 [SCSI] fcoe, libfcoe: Add support for FIP. FCoE discovery and keep-alive.

:::::: TO: Joe Eykholt <jeykholt@xxxxxxxxx>
:::::: CC: James Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx>

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