Hi Kefeng, kernel test robot noticed the following build errors: [auto build test ERROR on soc/for-next] [also build test ERROR on geert-m68k/for-next geert-m68k/for-linus deller-parisc/for-next powerpc/next powerpc/fixes linus/master v6.7-rc1 next-20231117] [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/Kefeng-Wang/asm-io-remove-unnecessary-xlate_dev_mem_ptr-and-unxlate_dev_mem_ptr/20231118-183038 base: https://git.kernel.org/pub/scm/linux/kernel/git/soc/soc.git for-next patch link: https://lore.kernel.org/r/20231118100827.1599422-1-wangkefeng.wang%40huawei.com patch subject: [PATCH] asm/io: remove unnecessary xlate_dev_mem_ptr() and unxlate_dev_mem_ptr() config: mips-db1xxx_defconfig (https://download.01.org/0day-ci/archive/20231119/202311190352.yqCpBjIn-lkp@xxxxxxxxx/config) compiler: mipsel-linux-gcc (GCC) 13.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231119/202311190352.yqCpBjIn-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/202311190352.yqCpBjIn-lkp@xxxxxxxxx/ All error/warnings (new ones prefixed by >>): drivers/char/mem.c: In function 'read_mem': >> drivers/char/mem.c:159:31: error: implicit declaration of function 'xlate_dev_mem_ptr' [-Werror=implicit-function-declaration] 159 | ptr = xlate_dev_mem_ptr(p); | ^~~~~~~~~~~~~~~~~ >> drivers/char/mem.c:159:29: warning: assignment to 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion] 159 | ptr = xlate_dev_mem_ptr(p); | ^ >> drivers/char/mem.c:164:25: error: implicit declaration of function 'unxlate_dev_mem_ptr' [-Werror=implicit-function-declaration] 164 | unxlate_dev_mem_ptr(p, ptr); | ^~~~~~~~~~~~~~~~~~~ drivers/char/mem.c: In function 'write_mem': drivers/char/mem.c:235:29: warning: assignment to 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion] 235 | ptr = xlate_dev_mem_ptr(p); | ^ cc1: some warnings being treated as errors vim +/xlate_dev_mem_ptr +159 drivers/char/mem.c ^1da177e4c3f41 Linus Torvalds 2005-04-16 133 22ec1a2aea73b9 Kees Cook 2017-12-01 134 bounce = kmalloc(PAGE_SIZE, GFP_KERNEL); 22ec1a2aea73b9 Kees Cook 2017-12-01 135 if (!bounce) 22ec1a2aea73b9 Kees Cook 2017-12-01 136 return -ENOMEM; 22ec1a2aea73b9 Kees Cook 2017-12-01 137 ^1da177e4c3f41 Linus Torvalds 2005-04-16 138 while (count > 0) { fa29e97bb8c70f Wu Fengguang 2009-12-14 139 unsigned long remaining; b5b38200ebe548 Kees Cook 2018-03-27 140 int allowed, probe; fa29e97bb8c70f Wu Fengguang 2009-12-14 141 f222318e9c3a31 Wu Fengguang 2009-12-14 142 sz = size_inside_page(p, count); ^1da177e4c3f41 Linus Torvalds 2005-04-16 143 22ec1a2aea73b9 Kees Cook 2017-12-01 144 err = -EPERM; a4866aa812518e Kees Cook 2017-04-05 145 allowed = page_is_allowed(p >> PAGE_SHIFT); a4866aa812518e Kees Cook 2017-04-05 146 if (!allowed) 22ec1a2aea73b9 Kees Cook 2017-12-01 147 goto failed; 22ec1a2aea73b9 Kees Cook 2017-12-01 148 22ec1a2aea73b9 Kees Cook 2017-12-01 149 err = -EFAULT; a4866aa812518e Kees Cook 2017-04-05 150 if (allowed == 2) { a4866aa812518e Kees Cook 2017-04-05 151 /* Show zeros for restricted memory. */ a4866aa812518e Kees Cook 2017-04-05 152 remaining = clear_user(buf, sz); a4866aa812518e Kees Cook 2017-04-05 153 } else { ^1da177e4c3f41 Linus Torvalds 2005-04-16 154 /* a4866aa812518e Kees Cook 2017-04-05 155 * On ia64 if a page has been mapped somewhere as a4866aa812518e Kees Cook 2017-04-05 156 * uncached, then it must also be accessed uncached a4866aa812518e Kees Cook 2017-04-05 157 * by the kernel or data corruption may occur. ^1da177e4c3f41 Linus Torvalds 2005-04-16 158 */ ^1da177e4c3f41 Linus Torvalds 2005-04-16 @159 ptr = xlate_dev_mem_ptr(p); e045fb2a988a9a venkatesh.pallipadi@xxxxxxxxx 2008-03-18 160 if (!ptr) 22ec1a2aea73b9 Kees Cook 2017-12-01 161 goto failed; a4866aa812518e Kees Cook 2017-04-05 162 fe557319aa06c2 Christoph Hellwig 2020-06-17 163 probe = copy_from_kernel_nofault(bounce, ptr, sz); e045fb2a988a9a venkatesh.pallipadi@xxxxxxxxx 2008-03-18 @164 unxlate_dev_mem_ptr(p, ptr); b5b38200ebe548 Kees Cook 2018-03-27 165 if (probe) 22ec1a2aea73b9 Kees Cook 2017-12-01 166 goto failed; 22ec1a2aea73b9 Kees Cook 2017-12-01 167 22ec1a2aea73b9 Kees Cook 2017-12-01 168 remaining = copy_to_user(buf, bounce, sz); a4866aa812518e Kees Cook 2017-04-05 169 } a4866aa812518e Kees Cook 2017-04-05 170 fa29e97bb8c70f Wu Fengguang 2009-12-14 171 if (remaining) 22ec1a2aea73b9 Kees Cook 2017-12-01 172 goto failed; e045fb2a988a9a venkatesh.pallipadi@xxxxxxxxx 2008-03-18 173 ^1da177e4c3f41 Linus Torvalds 2005-04-16 174 buf += sz; ^1da177e4c3f41 Linus Torvalds 2005-04-16 175 p += sz; ^1da177e4c3f41 Linus Torvalds 2005-04-16 176 count -= sz; ^1da177e4c3f41 Linus Torvalds 2005-04-16 177 read += sz; 8619e5bdeee8b2 Tetsuo Handa 2019-08-26 178 if (should_stop_iteration()) 8619e5bdeee8b2 Tetsuo Handa 2019-08-26 179 break; ^1da177e4c3f41 Linus Torvalds 2005-04-16 180 } 22ec1a2aea73b9 Kees Cook 2017-12-01 181 kfree(bounce); ^1da177e4c3f41 Linus Torvalds 2005-04-16 182 ^1da177e4c3f41 Linus Torvalds 2005-04-16 183 *ppos += read; ^1da177e4c3f41 Linus Torvalds 2005-04-16 184 return read; 22ec1a2aea73b9 Kees Cook 2017-12-01 185 22ec1a2aea73b9 Kees Cook 2017-12-01 186 failed: 22ec1a2aea73b9 Kees Cook 2017-12-01 187 kfree(bounce); 22ec1a2aea73b9 Kees Cook 2017-12-01 188 return err; ^1da177e4c3f41 Linus Torvalds 2005-04-16 189 } ^1da177e4c3f41 Linus Torvalds 2005-04-16 190 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki