Hi Zhongkun, Thank you for the patch! Yet something to improve: [auto build test ERROR on akpm-mm/mm-everything] url: https://github.com/intel-lab-lkp/linux/commits/Zhongkun-He/mm-replace-atomic_t-with-percpu_ref-in-mempolicy/20221205-001554 base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything patch link: https://lore.kernel.org/r/20221204161432.2149375-1-hezhongkun.hzk%40bytedance.com patch subject: [PATCH 0/3] mm: replace atomic_t with percpu_ref in mempolicy. config: i386-randconfig-a013 compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1) 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/ea5329aa9a0c20be63930f7c0fbb8aa238772851 git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Zhongkun-He/mm-replace-atomic_t-with-percpu_ref-in-mempolicy/20221205-001554 git checkout ea5329aa9a0c20be63930f7c0fbb8aa238772851 # 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=i386 SHELL=/bin/bash If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot All errors (new ones prefixed by >>): In file included from drivers/char/mem.c:25: In file included from include/linux/shmem_fs.h:7: >> include/linux/mempolicy.h:219:1: error: non-void function does not return a value [-Werror,-Wreturn-type] } ^ 1 error generated. -- In file included from kernel/exit.c:38: >> include/linux/mempolicy.h:219:1: error: non-void function does not return a value [-Werror,-Wreturn-type] } ^ kernel/exit.c:1839:13: warning: no previous prototype for function 'abort' [-Wmissing-prototypes] __weak void abort(void) ^ kernel/exit.c:1839:8: note: declare 'static' if the function is not intended to be used outside of this translation unit __weak void abort(void) ^ static 1 warning and 1 error generated. -- In file included from mm/shmem.c:38: In file included from include/linux/hugetlb.h:30: >> include/linux/mempolicy.h:219:1: error: non-void function does not return a value [-Werror,-Wreturn-type] } ^ mm/shmem.c:1487:2: error: implicit declaration of function 'mpol_cond_put' is invalid in C99 [-Werror,-Wimplicit-function-declaration] mpol_cond_put(vma->vm_policy); ^ 2 errors generated. -- In file included from mm/hugetlb.c:15: >> include/linux/mempolicy.h:219:1: error: non-void function does not return a value [-Werror,-Wreturn-type] } ^ mm/hugetlb.c:1249:2: error: implicit declaration of function 'mpol_cond_put' is invalid in C99 [-Werror,-Wimplicit-function-declaration] mpol_cond_put(mpol); ^ mm/hugetlb.c:2324:2: error: implicit declaration of function 'mpol_cond_put' is invalid in C99 [-Werror,-Wimplicit-function-declaration] mpol_cond_put(mpol); ^ mm/hugetlb.c:2360:2: error: implicit declaration of function 'mpol_cond_put' is invalid in C99 [-Werror,-Wimplicit-function-declaration] mpol_cond_put(mpol); ^ 4 errors generated. -- In file included from kernel/sched/fair.c:44: >> include/linux/mempolicy.h:219:1: error: non-void function does not return a value [-Werror,-Wreturn-type] } ^ kernel/sched/fair.c:5794:6: warning: no previous prototype for function 'init_cfs_bandwidth' [-Wmissing-prototypes] void init_cfs_bandwidth(struct cfs_bandwidth *cfs_b) {} ^ kernel/sched/fair.c:5794:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void init_cfs_bandwidth(struct cfs_bandwidth *cfs_b) {} ^ static kernel/sched/fair.c:12118:6: warning: no previous prototype for function 'free_fair_sched_group' [-Wmissing-prototypes] void free_fair_sched_group(struct task_group *tg) { } ^ kernel/sched/fair.c:12118:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void free_fair_sched_group(struct task_group *tg) { } ^ static kernel/sched/fair.c:12120:5: warning: no previous prototype for function 'alloc_fair_sched_group' [-Wmissing-prototypes] int alloc_fair_sched_group(struct task_group *tg, struct task_group *parent) ^ kernel/sched/fair.c:12120:1: note: declare 'static' if the function is not intended to be used outside of this translation unit int alloc_fair_sched_group(struct task_group *tg, struct task_group *parent) ^ static kernel/sched/fair.c:12125:6: warning: no previous prototype for function 'online_fair_sched_group' [-Wmissing-prototypes] void online_fair_sched_group(struct task_group *tg) { } ^ kernel/sched/fair.c:12125:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void online_fair_sched_group(struct task_group *tg) { } ^ static kernel/sched/fair.c:12127:6: warning: no previous prototype for function 'unregister_fair_sched_group' [-Wmissing-prototypes] void unregister_fair_sched_group(struct task_group *tg) { } ^ kernel/sched/fair.c:12127:1: note: declare 'static' if the function is not intended to be used outside of this translation unit void unregister_fair_sched_group(struct task_group *tg) { } ^ static 5 warnings and 1 error generated. vim +219 include/linux/mempolicy.h 216 217 static inline bool mpol_tryget(struct mempolicy *pol) 218 { > 219 } 220 -- 0-DAY CI Kernel Test Service https://01.org/lkp