Hi Julian, kernel test robot noticed the following build errors: [auto build test ERROR on akpm-mm/mm-nonmm-unstable] [also build test ERROR on arm64/for-next/core soc/for-next linus/master v6.11 next-20240924] [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/Julian-Vetter/Consolidate-__memcpy_-to-from-io-and-__memset_io-into-a-single-lib/20240924-172751 base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-nonmm-unstable patch link: https://lore.kernel.org/r/20240924092223.534040-3-jvetter%40kalrayinc.com patch subject: [PATCH v4 2/5] Replace generic memcpy and memset by IO memcpy functions config: openrisc-defconfig (https://download.01.org/0day-ci/archive/20240925/202409250049.WzbuwMDw-lkp@xxxxxxxxx/config) compiler: or1k-linux-gcc (GCC) 14.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240925/202409250049.WzbuwMDw-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/202409250049.WzbuwMDw-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): In file included from arch/openrisc/include/asm/io.h:37, from include/linux/io.h:14, from arch/openrisc/kernel/asm-offsets.c:31: include/asm-generic/io.h: In function 'memset_io': >> include/asm-generic/io.h:1166:9: error: implicit declaration of function '__memset_io'; did you mean 'memset_io'? [-Wimplicit-function-declaration] 1166 | __memset_io(__io_virt(addr), value, size); | ^~~~~~~~~~~ | memset_io include/asm-generic/io.h: In function 'memcpy_fromio': >> include/asm-generic/io.h:1184:9: error: implicit declaration of function '__memcpy_fromio'; did you mean 'memcpy_fromio'? [-Wimplicit-function-declaration] 1184 | __memcpy_fromio(buffer, __io_virt(addr), size); | ^~~~~~~~~~~~~~~ | memcpy_fromio include/asm-generic/io.h: In function 'memcpy_toio': >> include/asm-generic/io.h:1201:9: error: implicit declaration of function '__memcpy_toio'; did you mean 'memcpy_toio'? [-Wimplicit-function-declaration] 1201 | __memcpy_toio(__io_virt(addr), buffer, size); | ^~~~~~~~~~~~~ | memcpy_toio make[3]: *** [scripts/Makefile.build:117: arch/openrisc/kernel/asm-offsets.s] Error 1 make[3]: Target 'prepare' not remade because of errors. make[2]: *** [Makefile:1193: prepare0] Error 2 make[2]: Target 'prepare' not remade because of errors. make[1]: *** [Makefile:224: __sub-make] Error 2 make[1]: Target 'prepare' not remade because of errors. make: *** [Makefile:224: __sub-make] Error 2 make: Target 'prepare' not remade because of errors. vim +1166 include/asm-generic/io.h 1152 1153 #ifndef memset_io 1154 #define memset_io memset_io 1155 /** 1156 * memset_io Set a range of I/O memory to a constant value 1157 * @addr: The beginning of the I/O-memory range to set 1158 * @val: The value to set the memory to 1159 * @count: The number of bytes to set 1160 * 1161 * Set a range of I/O memory to a given value. 1162 */ 1163 static inline void memset_io(volatile void __iomem *addr, int value, 1164 size_t size) 1165 { > 1166 __memset_io(__io_virt(addr), value, size); 1167 } 1168 #endif 1169 1170 #ifndef memcpy_fromio 1171 #define memcpy_fromio memcpy_fromio 1172 /** 1173 * memcpy_fromio Copy a block of data from I/O memory 1174 * @dst: The (RAM) destination for the copy 1175 * @src: The (I/O memory) source for the data 1176 * @count: The number of bytes to copy 1177 * 1178 * Copy a block of data from I/O memory. 1179 */ 1180 static inline void memcpy_fromio(void *buffer, 1181 const volatile void __iomem *addr, 1182 size_t size) 1183 { > 1184 __memcpy_fromio(buffer, __io_virt(addr), size); 1185 } 1186 #endif 1187 1188 #ifndef memcpy_toio 1189 #define memcpy_toio memcpy_toio 1190 /** 1191 * memcpy_toio Copy a block of data into I/O memory 1192 * @dst: The (I/O memory) destination for the copy 1193 * @src: The (RAM) source for the data 1194 * @count: The number of bytes to copy 1195 * 1196 * Copy a block of data to I/O memory. 1197 */ 1198 static inline void memcpy_toio(volatile void __iomem *addr, const void *buffer, 1199 size_t size) 1200 { > 1201 __memcpy_toio(__io_virt(addr), buffer, size); 1202 } 1203 #endif 1204 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki