Hi Muhammad,
kernel test robot noticed the following build warnings:
[auto build test WARNING on akpm-mm/mm-everything] [also build test WARNING on next-20230417] [cannot apply to linus/master v6.3-rc7] [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/Muhammad-Usama-Anjum/userfaul... base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything patch link: https://lore.kernel.org/r/20230418062008.1434826-3-usama.anjum%40collabora.c... patch subject: [PATCH v14 2/5] fs/proc/task_mmu: Implement IOCTL to get and optionally clear info about PTEs config: arm-defconfig (https://download.01.org/0day-ci/archive/20230419/202304190331.VR44lj9J-lkp@i...) compiler: arm-linux-gnueabi-gcc (GCC) 12.1.0 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 # https://github.com/intel-lab-lkp/linux/commit/4fe2396ba406868e01de910812e7e3... git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Muhammad-Usama-Anjum/userfaultfd-UFFD_FEATURE_WP_ASYNC/20230418-142225 git checkout 4fe2396ba406868e01de910812e7e3c719ba11be # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=arm olddefconfig COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash fs/proc/
If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot lkp@intel.com | Link: https://lore.kernel.org/oe-kbuild-all/202304190331.VR44lj9J-lkp@intel.com/
All warnings (new ones prefixed by >>):
fs/proc/task_mmu.c: In function 'do_pagemap_scan': fs/proc/task_mmu.c:2205:17: error: implicit declaration of function 'flush_tlb_mm_range'; did you mean 'flush_tlb_range'? [-Werror=implicit-function-declaration] 2205 | flush_tlb_mm_range(mm, start, end, PAGE_SHIFT, false); | ^~~~~~~~~~~~~~~~~~ | flush_tlb_range In file included from include/linux/highmem.h:14, from include/linux/bvec.h:10, from include/linux/blk_types.h:10, from include/linux/writeback.h:13, from include/linux/memcontrol.h:22, from include/linux/swap.h:9, from include/linux/mm_inline.h:7, from fs/proc/task_mmu.c:3: include/linux/highmem-internal.h: In function 'pagemap_scan_pmd_entry':
include/linux/highmem-internal.h:271:9: warning: 'orig_pte' is used uninitialized [-Wuninitialized]
271 | __kunmap_atomic(__addr); \ | ^~~~~~~~~~~~~~~ fs/proc/task_mmu.c:1934:22: note: 'orig_pte' was declared here 1934 | pte_t *pte, *orig_pte; | ^~~~~~~~ cc1: some warnings being treated as errors
vim +/orig_pte +271 include/linux/highmem-internal.h
13f876ba77ebd5 Thomas Gleixner 2020-11-03 251 e7392b4eca84e8 Fabio M. De Francesco 2022-05-13 252 /** e7392b4eca84e8 Fabio M. De Francesco 2022-05-13 253 * kunmap_atomic - Unmap the virtual address mapped by kmap_atomic() - deprecated! e7392b4eca84e8 Fabio M. De Francesco 2022-05-13 254 * @__addr: Virtual address to be unmapped e7392b4eca84e8 Fabio M. De Francesco 2022-05-13 255 * e7392b4eca84e8 Fabio M. De Francesco 2022-05-13 256 * Unmaps an address previously mapped by kmap_atomic() and re-enables e7392b4eca84e8 Fabio M. De Francesco 2022-05-13 257 * pagefaults. Depending on PREEMP_RT configuration, re-enables also e7392b4eca84e8 Fabio M. De Francesco 2022-05-13 258 * migration and preemption. Users should not count on these side effects. e7392b4eca84e8 Fabio M. De Francesco 2022-05-13 259 * e7392b4eca84e8 Fabio M. De Francesco 2022-05-13 260 * Mappings should be unmapped in the reverse order that they were mapped. e7392b4eca84e8 Fabio M. De Francesco 2022-05-13 261 * See kmap_local_page() for details on nesting. e7392b4eca84e8 Fabio M. De Francesco 2022-05-13 262 * e7392b4eca84e8 Fabio M. De Francesco 2022-05-13 263 * @__addr can be any address within the mapped page, so there is no need e7392b4eca84e8 Fabio M. De Francesco 2022-05-13 264 * to subtract any offset that has been added. In contrast to kunmap(), e7392b4eca84e8 Fabio M. De Francesco 2022-05-13 265 * this function takes the address returned from kmap_atomic(), not the e7392b4eca84e8 Fabio M. De Francesco 2022-05-13 266 * page passed to it. The compiler will warn you if you pass the page. 13f876ba77ebd5 Thomas Gleixner 2020-11-03 267 */ 13f876ba77ebd5 Thomas Gleixner 2020-11-03 268 #define kunmap_atomic(__addr) \ 13f876ba77ebd5 Thomas Gleixner 2020-11-03 269 do { \ 13f876ba77ebd5 Thomas Gleixner 2020-11-03 270 BUILD_BUG_ON(__same_type((__addr), struct page *)); \ 13f876ba77ebd5 Thomas Gleixner 2020-11-03 @271 __kunmap_atomic(__addr); \ 13f876ba77ebd5 Thomas Gleixner 2020-11-03 272 } while (0) 13f876ba77ebd5 Thomas Gleixner 2020-11-03 273