tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master head: c3f7b3be172b39d90b4c5cb87a2231cc6c2c8dcf commit: e75b894778116889e88995d0e5029c2e9f6d847c [5063/5087] fs/epoll: use a per-cpu counter for user's watches count config: ia64-randconfig-r015-20210803 (attached as .config) compiler: ia64-linux-gcc (GCC) 10.3.0 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://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=e75b894778116889e88995d0e5029c2e9f6d847c git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git git fetch --no-tags linux-next master git checkout e75b894778116889e88995d0e5029c2e9f6d847c # save the attached .config to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross O=build_dir ARCH=ia64 SHELL=/bin/bash 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/ia64/include/asm/pgtable.h:153, from include/linux/pgtable.h:6, from arch/ia64/include/asm/uaccess.h:40, from include/linux/uaccess.h:11, from arch/ia64/include/asm/sections.h:11, from include/linux/interrupt.h:20, from kernel/user.c:18: arch/ia64/include/asm/mmu_context.h: In function 'reload_context': arch/ia64/include/asm/mmu_context.h:127:41: warning: variable 'old_rr4' set but not used [-Wunused-but-set-variable] 127 | unsigned long rr0, rr1, rr2, rr3, rr4, old_rr4; | ^~~~~~~ kernel/user.c: In function 'free_user': >> kernel/user.c:141:28: error: 'struct user_struct' has no member named 'epoll_watches' 141 | percpu_counter_destroy(&up->epoll_watches); | ^~ In file included from include/linux/sched/user.h:7, from kernel/user.c:17: kernel/user.c: In function 'alloc_uid': kernel/user.c:189:31: error: 'struct user_struct' has no member named 'epoll_watches' 189 | if (percpu_counter_init(&new->epoll_watches, 0, GFP_KERNEL)) { | ^~ include/linux/percpu_counter.h:38:25: note: in definition of macro 'percpu_counter_init' 38 | __percpu_counter_init(fbc, value, gfp, &__key); \ | ^~~ kernel/user.c:203:31: error: 'struct user_struct' has no member named 'epoll_watches' 203 | percpu_counter_destroy(&new->epoll_watches); | ^~ In file included from include/linux/sched/user.h:7, from kernel/user.c:17: kernel/user.c: In function 'uid_cache_init': kernel/user.c:225:36: error: 'struct user_struct' has no member named 'epoll_watches' 225 | if (percpu_counter_init(&root_user.epoll_watches, 0, GFP_KERNEL)) | ^ include/linux/percpu_counter.h:38:25: note: in definition of macro 'percpu_counter_init' 38 | __percpu_counter_init(fbc, value, gfp, &__key); \ | ^~~ vim +141 kernel/user.c 131 132 /* IRQs are disabled and uidhash_lock is held upon function entry. 133 * IRQ state (as stored in flags) is restored and uidhash_lock released 134 * upon function exit. 135 */ 136 static void free_user(struct user_struct *up, unsigned long flags) 137 __releases(&uidhash_lock) 138 { 139 uid_hash_remove(up); 140 spin_unlock_irqrestore(&uidhash_lock, flags); > 141 percpu_counter_destroy(&up->epoll_watches); 142 kmem_cache_free(uid_cachep, up); 143 } 144 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx
Attachment:
.config.gz
Description: application/gzip