Hi "Thomas, I love your patch! Yet something to improve: [auto build test ERROR on mmotm/master] url: https://github.com/0day-ci/linux/commits/Thomas-Hellstr-m-VMware/mm-Fix-a-huge-pud-insertion-race-during-faulting/20191024-175905 base: git://git.cmpxchg.org/linux-mmotm.git master config: i386-tinyconfig (attached as .config) compiler: gcc-7 (Debian 7.4.0-14) 7.4.0 reproduce: # save the attached .config to linux build tree make ARCH=i386 If you fix the issue, kindly add following tag Reported-by: kbuild test robot All errors (new ones prefixed by >>): In file included from arch/x86/include/asm/pgtable.h:1466:0, from include/linux/mm.h:99, from include/linux/memcontrol.h:20, from include/linux/swap.h:9, from include/linux/suspend.h:5, from arch/x86/kernel/asm-offsets.c:13: include/asm-generic/pgtable.h: In function 'pud_none_or_trans_huge_or_dev_or_clear_bad': >> include/asm-generic/pgtable.h:920:52: error: implicit declaration of function 'pud_devmap'; did you mean 'pud_mkdevmap'? [-Werror=implicit-function-declaration] if (pud_none(pudval) || pud_trans_huge(pudval) || pud_devmap(pudval)) ^~~~~~~~~~ pud_mkdevmap In file included from include/linux/memcontrol.h:20:0, from include/linux/swap.h:9, from include/linux/suspend.h:5, from arch/x86/kernel/asm-offsets.c:13: include/linux/mm.h: At top level: >> include/linux/mm.h:572:19: error: static declaration of 'pud_devmap' follows non-static declaration static inline int pud_devmap(pud_t pud) ^~~~~~~~~~ In file included from arch/x86/include/asm/pgtable.h:1466:0, from include/linux/mm.h:99, from include/linux/memcontrol.h:20, from include/linux/swap.h:9, from include/linux/suspend.h:5, from arch/x86/kernel/asm-offsets.c:13: include/asm-generic/pgtable.h:920:52: note: previous implicit declaration of 'pud_devmap' was here if (pud_none(pudval) || pud_trans_huge(pudval) || pud_devmap(pudval)) ^~~~~~~~~~ cc1: some warnings being treated as errors make[2]: *** [arch/x86/kernel/asm-offsets.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [prepare0] Error 2 make[1]: Target 'prepare' not remade because of errors. make: *** [sub-make] Error 2 13 real 5 user 3 sys 72.35% cpu make prepare vim +920 include/asm-generic/pgtable.h 914 915 /* See pmd_none_or_trans_huge_or_clear_bad for discussion. */ 916 static inline int pud_none_or_trans_huge_or_dev_or_clear_bad(pud_t *pud) 917 { 918 pud_t pudval = READ_ONCE(*pud); 919 > 920 if (pud_none(pudval) || pud_trans_huge(pudval) || pud_devmap(pudval)) 921 return 1; 922 if (unlikely(pud_bad(pudval))) { 923 pud_clear_bad(pud); 924 return 1; 925 } 926 return 0; 927 } 928 --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation