On Thu, 21 Jan 2016 03:32:41 +0800 kbuild test robot <l...@intel.com> wrote:
> Hi Michael, > > [auto build test ERROR on next-20160120] > [cannot apply to v4.4-rc8 v4.4-rc7 v4.4-rc6 v4.4] > [if your patch is applied to the wrong git tree, please drop us a note to > help improving the system] > > url: > https://github.com/0day-ci/linux/commits/Michael-Holzheu/numa-fix-proc-pid-numa_maps-on-s390/20160121-022313 > config: ia64-alldefconfig (attached as .config) > reproduce: > wget > https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross > -O ~/bin/make.cross > chmod +x ~/bin/make.cross > # save the attached .config to linux build tree > make.cross ARCH=ia64 > > All errors (new ones prefixed by >>): > > fs/proc/task_mmu.c: In function 'gather_pte_stats': > >> fs/proc/task_mmu.c:1523:3: error: implicit declaration of function > >> 'huge_ptep_get' [-Werror=implicit-function-declaration] > pte_t huge_pte = huge_ptep_get((pte_t *)pmd); > ^ hm. That whole code block in gather_pte_stats() just shouldn't exist when CONFIG_TRANSPARENT_HUGEPAGE=n. And because pmd_trans_huge_lock() returns NULL, the compiler will nuke it all anyway. So instead of doing the obvious: --- a/fs/proc/task_mmu.c~numa-fix-proc-pid-numa_maps-on-s390-fix +++ a/fs/proc/task_mmu.c @@ -1524,7 +1524,11 @@ static int gather_pte_stats(pmd_t *pmd, ptl = pmd_trans_huge_lock(pmd, vma); if (ptl) { +#ifdef CONFIG_HUGETLB_PAGE pte_t huge_pte = huge_ptep_get((pte_t *)pmd); +#else + pte_t huge_pte = *(pte_t *)pmd; +#endif struct page *page; page = can_gather_numa_stats(huge_pte, vma, addr); I'm thinking we should do --- a/fs/proc/task_mmu.c~numa-fix-proc-pid-numa_maps-on-s390-fix +++ a/fs/proc/task_mmu.c @@ -1523,6 +1523,7 @@ static int gather_pte_stats(pmd_t *pmd, pte_t *pte; ptl = pmd_trans_huge_lock(pmd, vma); +#ifdef CONFIG_TRANSPARENT_HUGEPAGE if (ptl) { pte_t huge_pte = huge_ptep_get((pte_t *)pmd); struct page *page; @@ -1534,6 +1535,7 @@ static int gather_pte_stats(pmd_t *pmd, spin_unlock(ptl); return 0; } +#endif if (pmd_trans_unstable(pmd)) return 0; _