drivers/usb/gadget/udc/max3420_udc.c:844:12: warning: stack frame size of 12888 bytes in function 'max3420_thread'
From: kernel test robot
Date: Sat Jun 20 2020 - 16:36:23 EST
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 4333a9b0b67bb4e8bcd91bdd80da80b0ec151162
commit: 48ba02b2e2b1a1c80718e93fefe99c8319597c4a usb: gadget: add udc driver for max3420
date: 3 months ago
config: x86_64-randconfig-a014-20200620 (attached as .config)
compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project f5bbe390d23d7da0ffb110cdb24b583c2dc87eba)
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 x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
git checkout 48ba02b2e2b1a1c80718e93fefe99c8319597c4a
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>
All warnings (new ones prefixed by >>, old ones prefixed by <<):
>> drivers/usb/gadget/udc/max3420_udc.c:844:12: warning: stack frame size of 12888 bytes in function 'max3420_thread' [-Wframe-larger-than=]
static int max3420_thread(void *dev_id)
^
1 warning generated.
vim +/max3420_thread +844 drivers/usb/gadget/udc/max3420_udc.c
843
> 844 static int max3420_thread(void *dev_id)
845 {
846 struct max3420_udc *udc = dev_id;
847 struct spi_device *spi = udc->spi;
848 int i, loop_again = 1;
849 unsigned long flags;
850
851 while (!kthread_should_stop()) {
852 if (!loop_again) {
853 ktime_t kt = ns_to_ktime(1000 * 1000 * 250); /* 250ms */
854
855 set_current_state(TASK_INTERRUPTIBLE);
856
857 spin_lock_irqsave(&udc->lock, flags);
858 if (udc->todo & ENABLE_IRQ) {
859 enable_irq(spi->irq);
860 udc->todo &= ~ENABLE_IRQ;
861 }
862 spin_unlock_irqrestore(&udc->lock, flags);
863
864 schedule_hrtimeout(&kt, HRTIMER_MODE_REL);
865 }
866 loop_again = 0;
867
868 mutex_lock(&udc->spi_bus_mutex);
869
870 /* If bus-vbus_active and disconnected */
871 if (!udc->vbus_active || !udc->softconnect)
872 goto loop;
873
874 if (max3420_start(udc)) {
875 loop_again = 1;
876 goto loop;
877 }
878
879 if (max3420_handle_irqs(udc)) {
880 loop_again = 1;
881 goto loop;
882 }
883
884 if (spi_max3420_rwkup(udc)) {
885 loop_again = 1;
886 goto loop;
887 }
888
889 max3420_do_data(udc, 0, 1); /* get done with the EP0 ZLP */
890
891 for (i = 1; i < MAX3420_MAX_EPS; i++) {
892 struct max3420_ep *ep = &udc->ep[i];
893
894 if (spi_max3420_enable(ep))
895 loop_again = 1;
896 if (spi_max3420_stall(ep))
897 loop_again = 1;
898 }
899 loop:
900 mutex_unlock(&udc->spi_bus_mutex);
901 }
902
903 set_current_state(TASK_RUNNING);
904 dev_info(udc->dev, "SPI thread exiting");
905 return 0;
906 }
907
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx
Attachment:
.config.gz
Description: application/gzip