Hi Christophe, kernel test robot noticed the following build warnings: [auto build test WARNING on linus/master] [also build test WARNING on v6.6-rc3 next-20230926] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Christophe-JAILLET/usb-dwc2-gadget-Fix-a-warning-when-compiling-with-W-1/20230923-185559 base: linus/master patch link: https://lore.kernel.org/r/5cf603809388aa04c9a02bbfe3cf531c20bb043e.1695466447.git.christophe.jaillet%40wanadoo.fr patch subject: [PATCH] usb: dwc2: gadget: Fix a warning when compiling with W=1 config: x86_64-buildonly-randconfig-004-20230927 (https://download.01.org/0day-ci/archive/20230927/202309270325.uqGsh5Cw-lkp@xxxxxxxxx/config) compiler: gcc-11 (Debian 11.3.0-12) 11.3.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20230927/202309270325.uqGsh5Cw-lkp@xxxxxxxxx/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@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202309270325.uqGsh5Cw-lkp@xxxxxxxxx/ All warnings (new ones prefixed by >>): drivers/usb/dwc2/gadget.c: In function 'dwc2_hsotg_initep': >> drivers/usb/dwc2/gadget.c:4804:55: warning: '%u' directive output may be truncated writing between 1 and 10 bytes into a region of size 8 [-Wformat-truncation=] 4804 | snprintf(hs_ep->name, sizeof(hs_ep->name), "ep%u%s", epnum, dir); | ^~ drivers/usb/dwc2/gadget.c:4804:52: note: directive argument in the range [1, 4294967295] 4804 | snprintf(hs_ep->name, sizeof(hs_ep->name), "ep%u%s", epnum, dir); | ^~~~~~~~ drivers/usb/dwc2/gadget.c:4804:9: note: 'snprintf' output between 6 and 16 bytes into a destination of size 10 4804 | snprintf(hs_ep->name, sizeof(hs_ep->name), "ep%u%s", epnum, dir); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vim +4804 drivers/usb/dwc2/gadget.c 4775 4776 /** 4777 * dwc2_hsotg_initep - initialise a single endpoint 4778 * @hsotg: The device state. 4779 * @hs_ep: The endpoint to be initialised. 4780 * @epnum: The endpoint number 4781 * @dir_in: True if direction is in. 4782 * 4783 * Initialise the given endpoint (as part of the probe and device state 4784 * creation) to give to the gadget driver. Setup the endpoint name, any 4785 * direction information and other state that may be required. 4786 */ 4787 static void dwc2_hsotg_initep(struct dwc2_hsotg *hsotg, 4788 struct dwc2_hsotg_ep *hs_ep, 4789 unsigned int epnum, 4790 bool dir_in) 4791 { 4792 char *dir; 4793 4794 if (epnum == 0) 4795 dir = ""; 4796 else if (dir_in) 4797 dir = "in"; 4798 else 4799 dir = "out"; 4800 4801 hs_ep->dir_in = dir_in; 4802 hs_ep->index = epnum; 4803 > 4804 snprintf(hs_ep->name, sizeof(hs_ep->name), "ep%u%s", epnum, dir); 4805 4806 INIT_LIST_HEAD(&hs_ep->queue); 4807 INIT_LIST_HEAD(&hs_ep->ep.ep_list); 4808 4809 /* add to the list of endpoints known by the gadget driver */ 4810 if (epnum) 4811 list_add_tail(&hs_ep->ep.ep_list, &hsotg->gadget.ep_list); 4812 4813 hs_ep->parent = hsotg; 4814 hs_ep->ep.name = hs_ep->name; 4815 4816 if (hsotg->params.speed == DWC2_SPEED_PARAM_LOW) 4817 usb_ep_set_maxpacket_limit(&hs_ep->ep, 8); 4818 else 4819 usb_ep_set_maxpacket_limit(&hs_ep->ep, 4820 epnum ? 1024 : EP0_MPS_LIMIT); 4821 hs_ep->ep.ops = &dwc2_hsotg_ep_ops; 4822 4823 if (epnum == 0) { 4824 hs_ep->ep.caps.type_control = true; 4825 } else { 4826 if (hsotg->params.speed != DWC2_SPEED_PARAM_LOW) { 4827 hs_ep->ep.caps.type_iso = true; 4828 hs_ep->ep.caps.type_bulk = true; 4829 } 4830 hs_ep->ep.caps.type_int = true; 4831 } 4832 4833 if (dir_in) 4834 hs_ep->ep.caps.dir_in = true; 4835 else 4836 hs_ep->ep.caps.dir_out = true; 4837 4838 /* 4839 * if we're using dma, we need to set the next-endpoint pointer 4840 * to be something valid. 4841 */ 4842 4843 if (using_dma(hsotg)) { 4844 u32 next = DXEPCTL_NEXTEP((epnum + 1) % 15); 4845 4846 if (dir_in) 4847 dwc2_writel(hsotg, next, DIEPCTL(epnum)); 4848 else 4849 dwc2_writel(hsotg, next, DOEPCTL(epnum)); 4850 } 4851 } 4852 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki