tree: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-unstable head: 1bdf44dbc966e31c635199d413ee064a7d320844 commit: d4edf38ab95397f32ae017848deeeb3b6d2c5bb7 [154/159] mm, hwpoison, hugetlb: introduce SUBPAGE_INDEX_HWPOISON to save raw error page config: x86_64-kexec (https://download.01.org/0day-ci/archive/20220603/202206030829.0eS2kZa0-lkp@xxxxxxxxx/config) compiler: gcc-11 (Debian 11.3.0-1) 11.3.0 reproduce (this is a W=1 build): # https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git/commit/?id=d4edf38ab95397f32ae017848deeeb3b6d2c5bb7 git remote add akpm-mm https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git git fetch --no-tags akpm-mm mm-unstable git checkout d4edf38ab95397f32ae017848deeeb3b6d2c5bb7 # save the config file mkdir build_dir && cp config build_dir/.config make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash If you fix the issue, kindly add following tag where applicable Reported-by: kernel test robot <lkp@xxxxxxxxx> All errors (new ones prefixed by >>): mm/memory-failure.c: In function '__get_huge_page_for_hwpoison': >> mm/memory-failure.c:1538:9: error: implicit declaration of function 'hugetlb_set_page_hwpoison' [-Werror=implicit-function-declaration] 1538 | hugetlb_set_page_hwpoison(head, page); | ^~~~~~~~~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors vim +/hugetlb_set_page_hwpoison +1538 mm/memory-failure.c 1498 1499 /* 1500 * Called from hugetlb code with hugetlb_lock held. 1501 * 1502 * Return values: 1503 * 0 - free hugepage 1504 * 1 - in-use hugepage 1505 * 2 - not a hugepage 1506 * -EBUSY - the hugepage is busy (try to retry) 1507 * -EHWPOISON - the hugepage is already hwpoisoned 1508 */ 1509 int __get_huge_page_for_hwpoison(unsigned long pfn, int flags) 1510 { 1511 struct page *page = pfn_to_page(pfn); 1512 struct page *head = compound_head(page); 1513 int ret = 2; /* fallback to normal page handling */ 1514 bool count_increased = false; 1515 1516 if (!PageHeadHuge(head)) 1517 goto out; 1518 1519 if (flags & MF_COUNT_INCREASED) { 1520 ret = 1; 1521 count_increased = true; 1522 } else if (HPageFreed(head)) { 1523 ret = 0; 1524 } else if (HPageMigratable(head)) { 1525 ret = get_page_unless_zero(head); 1526 if (ret) 1527 count_increased = true; 1528 } else { 1529 ret = -EBUSY; 1530 goto out; 1531 } 1532 1533 if (TestSetPageHWPoison(head)) { 1534 ret = -EHWPOISON; 1535 goto out; 1536 } 1537 > 1538 hugetlb_set_page_hwpoison(head, page); 1539 1540 return ret; 1541 out: 1542 if (count_increased) 1543 put_page(head); 1544 return ret; 1545 } 1546 -- 0-DAY CI Kernel Test Service https://01.org/lkp