From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============8108991844892109844==" MIME-Version: 1.0 From: kernel test robot To: kbuild-all@lists.01.org Subject: Re: [PATCH 6/6] sched, rt: support schedstats for RT sched class Date: Tue, 01 Dec 2020 21:59:20 +0800 Message-ID: <202012012133.KYsEc5XQ-lkp@intel.com> In-Reply-To: <20201201115416.26515-7-laoar.shao@gmail.com> List-Id: --===============8108991844892109844== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hi Yafang, Thank you for the patch! Yet something to improve: [auto build test ERROR on v5.10-rc6] [cannot apply to tip/sched/core next-20201201] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Yafang-Shao/sched-support-= schedstats-for-RT-sched-class/20201201-200101 base: b65054597872ce3aefbc6a666385eabdf9e288da config: nds32-alldefconfig (attached as .config) compiler: nds32le-linux-gcc (GCC) 9.3.0 reproduce (this is a W=3D1 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/0day-ci/linux/commit/8fe6f2ed51d6372798149583b= e6c936c597c500e git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Yafang-Shao/sched-support-schedsta= ts-for-RT-sched-class/20201201-200101 git checkout 8fe6f2ed51d6372798149583be6c936c597c500e # save the attached .config to linux build tree COMPILER_INSTALL_PATH=3D$HOME/0day COMPILER=3Dgcc-9.3.0 make.cross = ARCH=3Dnds32 = If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All errors (new ones prefixed by >>): kernel/sched/rt.c:253:6: warning: no previous prototype for 'free_rt_sch= ed_group' [-Wmissing-prototypes] 253 | void free_rt_sched_group(struct task_group *tg) { } | ^~~~~~~~~~~~~~~~~~~ kernel/sched/rt.c:255:5: warning: no previous prototype for 'alloc_rt_sc= hed_group' [-Wmissing-prototypes] 255 | int alloc_rt_sched_group(struct task_group *tg, struct task_grou= p *parent) | ^~~~~~~~~~~~~~~~~~~~ kernel/sched/rt.c:668:6: warning: no previous prototype for 'sched_rt_ba= ndwidth_account' [-Wmissing-prototypes] 668 | bool sched_rt_bandwidth_account(struct rt_rq *rt_rq) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/sched/rt.c: In function '__schedstat_from_sched_rt_entity': kernel/sched/rt.c:1288:13: error: 'struct rt_rq' has no member named 'tg' 1288 | tg =3D rt_rq->tg; | ^~ >> kernel/sched/rt.c:1290:14: error: dereferencing pointer to incomplete ty= pe 'struct task_group' 1290 | *stats =3D tg->stats[cpu]; | ^~ kernel/sched/rt.c:1281:6: warning: variable 'cpu' set but not used [-Wun= used-but-set-variable] 1281 | int cpu; | ^~~ kernel/sched/rt.c: In function 'update_stats_wait_start_rt': kernel/sched/rt.c:1308:22: warning: variable 'p' set but not used [-Wunu= sed-but-set-variable] 1308 | struct task_struct *p =3D NULL; | ^ kernel/sched/rt.c: In function 'update_stats_enqueue_sleeper_rt': kernel/sched/rt.c:1325:22: warning: variable 'p' set but not used [-Wunu= sed-but-set-variable] 1325 | struct task_struct *p =3D NULL; | ^ kernel/sched/rt.c: In function 'update_stats_wait_end_rt': kernel/sched/rt.c:1353:22: warning: variable 'p' set but not used [-Wunu= sed-but-set-variable] 1353 | struct task_struct *p =3D NULL; | ^ kernel/sched/rt.c: At top level: kernel/sched/rt.c:1698:6: warning: no previous prototype for 'set_next_t= ask_rt' [-Wmissing-prototypes] 1698 | void set_next_task_rt(struct rq *rq, struct task_struct *p, bool= first) | ^~~~~~~~~~~~~~~~ vim +1290 kernel/sched/rt.c 1273 = 1274 static inline void 1275 __schedstat_from_sched_rt_entity(struct sched_rt_entity *rt_se, 1276 struct sched_statistics **stats) 1277 { 1278 struct task_struct *p; 1279 struct task_group *tg; 1280 struct rt_rq *rt_rq; 1281 int cpu; 1282 = 1283 if (rt_entity_is_task(rt_se)) { 1284 p =3D rt_task_of(rt_se); 1285 *stats =3D &p->stats; 1286 } else { 1287 rt_rq =3D group_rt_rq(rt_se); 1288 tg =3D rt_rq->tg; 1289 cpu =3D cpu_of(rq_of_rt_rq(rt_rq)); > 1290 *stats =3D tg->stats[cpu]; 1291 } 1292 } 1293 = --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org --===============8108991844892109844== Content-Type: application/gzip MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="config.gz" 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 Z6ya9b5dvVCLMrv/A6CP2MTkaQAA --===============8108991844892109844==--