Hi Mike, I love your patch! Yet something to improve: [auto build test ERROR on akpm-mm/mm-everything] [also build test ERROR on next-20221004] [cannot apply to linus/master v6.0] [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/Mike-Kravetz/hugetlb-fixes-for-new-vma-lock-series/20221005-091913 base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything config: s390-defconfig compiler: s390-linux-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/49523e6ee01b312c4eebea201b3ac31836fb1227 git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Mike-Kravetz/hugetlb-fixes-for-new-vma-lock-series/20221005-091913 git checkout 49523e6ee01b312c4eebea201b3ac31836fb1227 # 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=s390 SHELL=/bin/bash If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot All errors (new ones prefixed by >>): s390-linux-ld: mm/hugetlb.o: in function `__unmap_hugepage_range_final': >> mm/hugetlb.c:5196: undefined reference to `__hugetlb_vma_unlock_write_free' pahole: .tmp_vmlinux.btf: No such file or directory .btf.vmlinux.bin.o: file not recognized: file format not recognized vim +5196 mm/hugetlb.c 5177 5178 void __unmap_hugepage_range_final(struct mmu_gather *tlb, 5179 struct vm_area_struct *vma, unsigned long start, 5180 unsigned long end, struct page *ref_page, 5181 zap_flags_t zap_flags) 5182 { 5183 hugetlb_vma_lock_write(vma); 5184 i_mmap_lock_write(vma->vm_file->f_mapping); 5185 5186 __unmap_hugepage_range(tlb, vma, start, end, ref_page, zap_flags); 5187 5188 /* 5189 * Unlock and free the vma lock before releasing i_mmap_rwsem. When 5190 * the vma_lock is freed, this makes the vma ineligible for pmd 5191 * sharing. And, i_mmap_rwsem is required to set up pmd sharing. 5192 * This is important as page tables for this unmapped range will 5193 * be asynchrously deleted. If the page tables are shared, there 5194 * will be issues when accessed by someone else. 5195 */ > 5196 __hugetlb_vma_unlock_write_free(vma); 5197 5198 i_mmap_unlock_write(vma->vm_file->f_mapping); 5199 } 5200 -- 0-DAY CI Kernel Test Service https://01.org/lkp