Re: [PATCH 07/19] mm/gup: introduce pin_user_pages*() and FOLL_PIN

From: kbuild test robot
Date: Mon Nov 25 2019 - 03:44:24 EST


Hi John,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on rdma/for-next]
[cannot apply to v5.4 next-20191122]
[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/John-Hubbard/pin_user_pages-reduced-risk-series-for-Linux-5-5/20191125-125637
base: https://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git for-next
config: arm-randconfig-a001-20191125 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 7.4.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
GCC_VERSION=7.4.0 make.cross ARCH=arm

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

mm/gup.o: In function `pin_user_pages_remote':
>> mm/gup.c:2528: undefined reference to `get_user_pages_remote'

vim +2528 mm/gup.c

2507
2508 /**
2509 * pin_user_pages_remote() - pin pages of a remote process (task != current)
2510 *
2511 * For now, this is a placeholder function, until various call sites are
2512 * converted to use the correct get_user_pages*() or pin_user_pages*() API. So,
2513 * this is identical to get_user_pages_remote().
2514 *
2515 * This is intended for Case 1 (DIO) in Documentation/vm/pin_user_pages.rst. It
2516 * is NOT intended for Case 2 (RDMA: long-term pins).
2517 */
2518 long pin_user_pages_remote(struct task_struct *tsk, struct mm_struct *mm,
2519 unsigned long start, unsigned long nr_pages,
2520 unsigned int gup_flags, struct page **pages,
2521 struct vm_area_struct **vmas, int *locked)
2522 {
2523 /*
2524 * This is a placeholder, until the pin functionality is activated.
2525 * Until then, just behave like the corresponding get_user_pages*()
2526 * routine.
2527 */
> 2528 return get_user_pages_remote(tsk, mm, start, nr_pages, gup_flags, pages,
2529 vmas, locked);
2530 }
2531 EXPORT_SYMBOL(pin_user_pages_remote);
2532

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx Intel Corporation

Attachment: .config.gz
Description: application/gzip