From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============2867512694369300411==" MIME-Version: 1.0 From: kbuild test robot To: kbuild-all@lists.01.org Subject: Re: [PATCH 11/24] rcu/tree: Maintain separate array for vmalloc ptrs Date: Wed, 29 Apr 2020 13:11:22 +0800 Message-ID: <202004291311.IyydeSPW%lkp@intel.com> In-Reply-To: <20200428205903.61704-12-urezki@gmail.com> List-Id: --===============2867512694369300411== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hi "Uladzislau, Thank you for the patch! Yet something to improve: [auto build test ERROR on rcu/dev] [also build test ERROR on rcu/rcu/next next-20200428] [cannot apply to linus/master linux/master v5.7-rc3] [if your patch is applied to the wrong git tree, please drop us a note to h= elp improve the system. BTW, we also suggest to use '--base' option to specify = the base tree in git format-patch, please see https://stackoverflow.com/a/37406= 982] url: https://github.com/0day-ci/linux/commits/Uladzislau-Rezki-Sony/Intr= oduce-kvfree_rcu-1-or-2-arguments/20200429-061752 base: https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.g= it dev config: mips-loongson1c_defconfig (attached as .config) compiler: clang version 11.0.0 (https://github.com/llvm/llvm-project f30416= fdde922eaa655934e050026930fefbd260) reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/= make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # install mips cross compiling tool for clang build # apt-get install binutils-mips-linux-gnu # save the attached .config to linux build tree COMPILER_INSTALL_PATH=3D$HOME/0day COMPILER=3Dclang make.cross ARCH= =3Dmips = If you fix the issue, kindly add following tag as appropriate Reported-by: kbuild test robot All errors (new ones prefixed by >>): >> kernel/rcu/tree.c:3053:4: error: implicit declaration of function 'vfree= ' [-Werror,-Wimplicit-function-declaration] vfree(bvhead->records[i]); ^ 1 error generated. vim +/vfree +3053 kernel/rcu/tree.c 2989 = 2990 /* 2991 * This function is invoked in workqueue context after a grace perio= d. 2992 * It frees all the objects queued on ->bhead_free or ->head_free. 2993 */ 2994 static void kfree_rcu_work(struct work_struct *work) 2995 { 2996 unsigned long flags; 2997 struct kvfree_rcu_bulk_data *bkhead, *bvhead, *bnext; 2998 struct rcu_head *head, *next; 2999 struct kfree_rcu_cpu *krcp; 3000 struct kfree_rcu_cpu_work *krwp; 3001 int i; 3002 = 3003 krwp =3D container_of(to_rcu_work(work), 3004 struct kfree_rcu_cpu_work, rcu_work); 3005 krcp =3D krwp->krcp; 3006 = 3007 raw_spin_lock_irqsave(&krcp->lock, flags); 3008 /* Channel 1. */ 3009 bkhead =3D krwp->bkvhead_free[0]; 3010 krwp->bkvhead_free[0] =3D NULL; 3011 = 3012 /* Channel 2. */ 3013 bvhead =3D krwp->bkvhead_free[1]; 3014 krwp->bkvhead_free[1] =3D NULL; 3015 = 3016 /* Channel 3. */ 3017 head =3D krwp->head_free; 3018 krwp->head_free =3D NULL; 3019 raw_spin_unlock_irqrestore(&krcp->lock, flags); 3020 = 3021 /* kmalloc()/kfree() channel. */ 3022 for (; bkhead; bkhead =3D bnext) { 3023 bnext =3D bkhead->next; 3024 debug_rcu_bhead_unqueue(bkhead); 3025 = 3026 rcu_lock_acquire(&rcu_callback_map); 3027 trace_rcu_invoke_kfree_bulk_callback(rcu_state.name, 3028 bkhead->nr_records, bkhead->records); 3029 = 3030 kfree_bulk(bkhead->nr_records, bkhead->records); 3031 rcu_lock_release(&rcu_callback_map); 3032 = 3033 krcp =3D krc_this_cpu_lock(&flags); 3034 if (put_cached_bnode(krcp, bkhead)) 3035 bkhead =3D NULL; 3036 krc_this_cpu_unlock(krcp, flags); 3037 = 3038 if (bkhead) 3039 free_page((unsigned long) bkhead); 3040 = 3041 cond_resched_tasks_rcu_qs(); 3042 } 3043 = 3044 /* vmalloc()/vfree() channel. */ 3045 for (; bvhead; bvhead =3D bnext) { 3046 bnext =3D bvhead->next; 3047 debug_rcu_bhead_unqueue(bvhead); 3048 = 3049 rcu_lock_acquire(&rcu_callback_map); 3050 for (i =3D 0; i < bvhead->nr_records; i++) { 3051 trace_rcu_invoke_kfree_callback(rcu_state.name, 3052 (struct rcu_head *) bvhead->records[i], 0); > 3053 vfree(bvhead->records[i]); 3054 } 3055 rcu_lock_release(&rcu_callback_map); 3056 = 3057 krcp =3D krc_this_cpu_lock(&flags); 3058 if (put_cached_bnode(krcp, bvhead)) 3059 bvhead =3D NULL; 3060 krc_this_cpu_unlock(krcp, flags); 3061 = 3062 if (bvhead) 3063 free_page((unsigned long) bvhead); 3064 = 3065 cond_resched_tasks_rcu_qs(); 3066 } 3067 = 3068 /* 3069 * Emergency case only. It can happen under low memory 3070 * condition when an allocation gets failed, so the "bulk" 3071 * path can not be temporary maintained. 3072 */ 3073 for (; head; head =3D next) { 3074 unsigned long offset =3D (unsigned long)head->func; 3075 void *ptr =3D (void *)head - offset; 3076 = 3077 next =3D head->next; 3078 debug_rcu_head_unqueue((struct rcu_head *)ptr); 3079 rcu_lock_acquire(&rcu_callback_map); 3080 trace_rcu_invoke_kfree_callback(rcu_state.name, head, offset); 3081 = 3082 if (!WARN_ON_ONCE(!__is_kfree_rcu_offset(offset))) 3083 kvfree(ptr); 3084 = 3085 rcu_lock_release(&rcu_callback_map); 3086 cond_resched_tasks_rcu_qs(); 3087 } 3088 } 3089 = --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org --===============2867512694369300411== Content-Type: application/gzip MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="config.gz" 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 wSs7YREAxurLTrHfc94VNuZ/AfIKIbjg7AAA --===============2867512694369300411==--