Hi Sean, On Mon, Mar 18, 2024 at 03:05:57PM -0400, Sean Anderson wrote: > On 3/18/24 13:50, Laurent Pinchart wrote: > > On Mon, Mar 18, 2024 at 11:06:40AM -0400, Sean Anderson wrote: > >> On 3/16/24 06:14, kernel test robot wrote: > >> > Hi Sean, > >> > > >> > kernel test robot noticed the following build warnings: > >> > > >> > [auto build test WARNING on v6.8] > >> > [cannot apply to drm-misc/drm-misc-next linus/master next-20240315] > >> > [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/Sean-Anderson/drm-zynqmp_dp-Downgrade-log-level-for-aux-retries-message/20240316-071208 > >> > base: v6.8 > >> > patch link: https://lore.kernel.org/r/20240315230916.1759060-7-sean.anderson%40linux.dev > >> > patch subject: [PATCH 6/6] drm: zynqmp_dp: Add debugfs interface for compliance testing > >> > config: microblaze-allmodconfig (https://download.01.org/0day-ci/archive/20240316/202403161704.ACHJdSJG-lkp@xxxxxxxxx/config) > >> > compiler: microblaze-linux-gcc (GCC) 13.2.0 > >> > reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240316/202403161704.ACHJdSJG-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/202403161704.ACHJdSJG-lkp@xxxxxxxxx/ > >> > > >> > All warnings (new ones prefixed by >>): > >> > > >> > drivers/gpu/drm/xlnx/zynqmp_dp.c: In function 'zynqmp_dp_bridge_debugfs_init': > >> >>> drivers/gpu/drm/xlnx/zynqmp_dp.c:2168:31: warning: 'sprintf' may write a terminating nul past the end of the destination [-Wformat-overflow=] > >> > 2168 | sprintf(name, fmt, i); > >> > | ^~~ > >> > drivers/gpu/drm/xlnx/zynqmp_dp.c:2168:17: note: 'sprintf' output between 18 and 20 bytes into a destination of size 19 > >> > 2168 | sprintf(name, fmt, i); > >> > | ^~~~~~~~~~~~~~~~~~~~~ > >> > >> Not a bug, as i will be at most 4, which uses 1 digit. > > > > The compiler can't know that. Please fix this, there's a zero warning > > policy. > > I cannot reproduce this with GCC 13.2.0. So given that this is not a bug and I can't reproduce > it, I don't see how I can verify any fix. There is a "reproduce" link in the bot's report. We followed the steps in that link and found that the warning could be reproduced. Please notice that this is a "W=1" warning. BTW, we also tested the v2 patch and the warning has been fixed there. Just for your information. $ cd linux $ git checkout v6.8 HEAD is now at e8f897f4afef0 Linux 6.8 $ b4 am https://lore.kernel.org/r/20240315230916.1759060-7-sean.anderson@xxxxxxxxx $ git am ./20240315_sean_anderson_drm_zynqmp_dp_misc_patches_and_debugfs_support.mbx Applying: drm: zynqmp_dp: Downgrade log level for aux retries message Applying: drm: zynqmp_dp: Adjust training values per-lane Applying: drm: zynqmp_dp: Add locking Applying: drm: zynqmp_dp: Split off several helper functions Applying: drm: zynqmp_dp: Optionally ignore DPCD errors Applying: drm: zynqmp_dp: Add debugfs interface for compliance testing $ wget https://download.01.org/0day-ci/archive/20240316/202403161704.ACHJdSJG-lkp@xxxxxxxxx/config $ mkdir build_dir $ cp config build_dir/.config $ git clone https://github.com/intel/lkp-tests.git ~/lkp-tests $ COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-13.2.0 ~/lkp-tests/kbuild/make.cross W=1 O=build_dir ARCH=microblaze olddefconfig $ COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-13.2.0 ~/lkp-tests/kbuild/make.cross W=1 O=build_dir ARCH=microblaze drivers/gpu/drm/xlnx/zynqmp_dp.o ... CC [M] drivers/gpu/drm/xlnx/zynqmp_dp.o ../drivers/gpu/drm/xlnx/zynqmp_dp.c: In function 'zynqmp_dp_bridge_debugfs_init': ../drivers/gpu/drm/xlnx/zynqmp_dp.c:2168:31: warning: 'sprintf' may write a terminating nul past the end of the destination [-Wformat-overflow=] 2168 | sprintf(name, fmt, i); | ^~~ ../drivers/gpu/drm/xlnx/zynqmp_dp.c:2168:17: note: 'sprintf' output between 18 and 20 bytes into a destination of size 19 2168 | sprintf(name, fmt, i); | ^~~~~~~~~~~~~~~~~~~~~ Best Regards, Yujie > > --Sean > > >> > vim +/sprintf +2168 drivers/gpu/drm/xlnx/zynqmp_dp.c > >> > > >> > 2136 > >> > 2137 DEFINE_DEBUGFS_ATTRIBUTE(fops_zynqmp_dp_rate, zynqmp_dp_rate_get, > >> > 2138 zynqmp_dp_rate_set, "%llu\n"); > >> > 2139 > >> > 2140 static void zynqmp_dp_bridge_debugfs_init(struct drm_bridge *bridge, > >> > 2141 struct dentry *root) > >> > 2142 { > >> > 2143 struct zynqmp_dp *dp = bridge_to_dp(bridge); > >> > 2144 struct dentry *test; > >> > 2145 int i; > >> > 2146 > >> > 2147 dp->test.bw_code = DP_LINK_BW_5_4; > >> > 2148 dp->test.link_cnt = dp->num_lanes; > >> > 2149 > >> > 2150 test = debugfs_create_dir("test", root); > >> > 2151 #define CREATE_FILE(name) \ > >> > 2152 debugfs_create_file(#name, 0600, test, dp, &fops_zynqmp_dp_##name) > >> > 2153 CREATE_FILE(pattern); > >> > 2154 CREATE_FILE(enhanced); > >> > 2155 CREATE_FILE(downspread); > >> > 2156 CREATE_FILE(active); > >> > 2157 CREATE_FILE(custom); > >> > 2158 CREATE_FILE(rate); > >> > 2159 CREATE_FILE(lanes); > >> > 2160 > >> > 2161 for (i = 0; i < dp->num_lanes; i++) { > >> > 2162 static const char fmt[] = "lane%d_preemphasis"; > >> > 2163 char name[sizeof(fmt)]; > >> > 2164 > >> > 2165 dp->debugfs_train_set[i].dp = dp; > >> > 2166 dp->debugfs_train_set[i].lane = i; > >> > 2167 > >> >> 2168 sprintf(name, fmt, i); > >> > 2169 debugfs_create_file(name, 0600, test, > >> > 2170 &dp->debugfs_train_set[i], > >> > 2171 &fops_zynqmp_dp_preemphasis); > >> > 2172 > >> > 2173 sprintf(name, "lane%d_swing", i); > >> > 2174 debugfs_create_file(name, 0600, test, > >> > 2175 &dp->debugfs_train_set[i], > >> > 2176 &fops_zynqmp_dp_swing); > >> > 2177 } > >> > 2178 } > >> > 2179 > > > >