Hi Shijie, Thank you for the patch! Yet something to improve: [auto build test ERROR on linus/master] [also build test ERROR on v5.7-rc5 next-20200512] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system. BTW, we also suggest to use '--base' option to specify the base tree in git format-patch, please see https://stackoverflow.com/a/37406982] url: https://github.com/0day-ci/linux/commits/Shijie-Hu/hugetlbfs-Get-unmapped-area-below-TASK_UNMAPPED_BASE-for-hugetlbfs/20200513-221024 base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 24085f70a6e1b0cb647ec92623284641d8270637 config: riscv-allyesconfig (attached as .config) compiler: riscv64-linux-gcc (GCC) 9.3.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day GCC_VERSION=9.3.0 make.cross ARCH=riscv If you fix the issue, kindly add following tag as appropriate Reported-by: kbuild test robot All errors (new ones prefixed by >>): fs/hugetlbfs/inode.c: In function 'hugetlb_get_unmapped_area': >> fs/hugetlbfs/inode.c:268:31: error: 'arch_get_unmapped_area' undeclared (first use in this function); did you mean 'thp_get_unmapped_area'? 268 | if (mm->get_unmapped_area == arch_get_unmapped_area) | ^~~~~~~~~~~~~~~~~~~~~~ | thp_get_unmapped_area fs/hugetlbfs/inode.c:268:31: note: each undeclared identifier is reported only once for each function it appears in vim +268 fs/hugetlbfs/inode.c 240 241 static unsigned long 242 hugetlb_get_unmapped_area(struct file *file, unsigned long addr, 243 unsigned long len, unsigned long pgoff, unsigned long flags) 244 { 245 struct mm_struct *mm = current->mm; 246 struct vm_area_struct *vma; 247 struct hstate *h = hstate_file(file); 248 249 if (len & ~huge_page_mask(h)) 250 return -EINVAL; 251 if (len > TASK_SIZE) 252 return -ENOMEM; 253 254 if (flags & MAP_FIXED) { 255 if (prepare_hugepage_range(file, addr, len)) 256 return -EINVAL; 257 return addr; 258 } 259 260 if (addr) { 261 addr = ALIGN(addr, huge_page_size(h)); 262 vma = find_vma(mm, addr); 263 if (TASK_SIZE - len >= addr && 264 (!vma || addr + len <= vm_start_gap(vma))) 265 return addr; 266 } 267 > 268 if (mm->get_unmapped_area == arch_get_unmapped_area) 269 return hugetlb_get_unmapped_area_bottomup(file, addr, len, 270 pgoff, flags); 271 return hugetlb_get_unmapped_area_topdown(file, addr, len, 272 pgoff, flags); 273 } 274 #endif 275 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org