Hi Minchan, I love your patch! Yet something to improve: [auto build test ERROR on hnaz-mm/master] url: https://github.com/intel-lab-lkp/linux/commits/Minchan-Kim/mm-fix-is_pinnable_page-against-on-cma-page/20220503-013733 base: https://github.com/hnaz/linux-mm master config: x86_64-randconfig-a012-20220502 (https://download.01.org/0day-ci/archive/20220503/202205030525.VFo3Ds9w-lkp@xxxxxxxxx/config) compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 09325d36061e42b495d1f4c7e933e260eac260ed) reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/intel-lab-lkp/linux/commit/1b8636710c31d44310f1d344e337c207562b851d git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Minchan-Kim/mm-fix-is_pinnable_page-against-on-cma-page/20220503-013733 git checkout 1b8636710c31d44310f1d344e337c207562b851d # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 prepare If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@xxxxxxxxx> All errors (new ones prefixed by >>): In file included from arch/x86/kernel/asm-offsets.c:13: In file included from include/linux/suspend.h:5: In file included from include/linux/swap.h:9: In file included from include/linux/memcontrol.h:20: >> include/linux/mm.h:1630:47: error: use of undeclared identifier 'MIGRATE_CMA'; did you mean 'MIGRATE_SYNC'? return !(is_zone_movable_page(page) || mt == MIGRATE_CMA || ^~~~~~~~~~~ MIGRATE_SYNC include/linux/migrate_mode.h:18:2: note: 'MIGRATE_SYNC' declared here MIGRATE_SYNC, ^ In file included from arch/x86/kernel/asm-offsets.c:13: In file included from include/linux/suspend.h:5: In file included from include/linux/swap.h:9: In file included from include/linux/memcontrol.h:20: >> include/linux/mm.h:1631:9: error: use of undeclared identifier 'MIGRATE_ISOLATE'; did you mean 'MIGRATE_MOVABLE'? mt == MIGRATE_ISOLATE || is_zero_pfn(page_to_pfn(page))); ^~~~~~~~~~~~~~~ MIGRATE_MOVABLE include/linux/mmzone.h:44:2: note: 'MIGRATE_MOVABLE' declared here MIGRATE_MOVABLE, ^ 2 errors generated. make[2]: *** [scripts/Makefile.build:122: arch/x86/kernel/asm-offsets.s] Error 1 make[2]: Target '__build' not remade because of errors. make[1]: *** [Makefile:1283: prepare0] Error 2 make[1]: Target 'prepare' not remade because of errors. make: *** [Makefile:226: __sub-make] Error 2 make: Target 'prepare' not remade because of errors. vim +1630 include/linux/mm.h 1623 1624 /* MIGRATE_CMA and ZONE_MOVABLE do not allow pin pages */ 1625 #ifdef CONFIG_MIGRATION 1626 static inline bool is_pinnable_page(struct page *page) 1627 { 1628 int mt = get_pageblock_migratetype(page); 1629 > 1630 return !(is_zone_movable_page(page) || mt == MIGRATE_CMA || > 1631 mt == MIGRATE_ISOLATE || is_zero_pfn(page_to_pfn(page))); 1632 } 1633 #else 1634 static inline bool is_pinnable_page(struct page *page) 1635 { 1636 return true; 1637 } 1638 #endif 1639 -- 0-DAY CI Kernel Test Service https://01.org/lkp