Hi Tejun, I love your patch! Perhaps something to improve: [auto build test WARNING on linux/master] [also build test WARNING on linus/master v6.2-rc5] [cannot apply to tip/sched/core tj-cgroup/for-next next-20230127] [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#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Tejun-Heo/sched-Encapsulate-task-attribute-change-sequence-into-a-helper-macro/20230128-123001 patch link: https://lore.kernel.org/r/20230128001639.3510083-24-tj%40kernel.org patch subject: [PATCH 23/30] sched_ext: Add cgroup support config: arc-defconfig (https://download.01.org/0day-ci/archive/20230129/202301290107.J4Eavi26-lkp@xxxxxxxxx/config) compiler: arc-elf-gcc (GCC) 12.1.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://github.com/intel-lab-lkp/linux/commit/6f861617cb846291559a9d0bfe60a9c1ca20f406 git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Tejun-Heo/sched-Encapsulate-task-attribute-change-sequence-into-a-helper-macro/20230128-123001 git checkout 6f861617cb846291559a9d0bfe60a9c1ca20f406 # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=arc olddefconfig COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=arc SHELL=/bin/bash kernel/ If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot <lkp@xxxxxxxxx> All warnings (new ones prefixed by >>): In file included from kernel/sched/sched.h:3404, from kernel/sched/core.c:85: >> kernel/sched/ext.h:182:48: warning: 'struct cgroup_taskset' declared inside parameter list will not be visible outside of this definition or declaration 182 | static inline int scx_cgroup_can_attach(struct cgroup_taskset *tset) { return 0; } | ^~~~~~~~~~~~~~ kernel/sched/ext.h:185:52: warning: 'struct cgroup_taskset' declared inside parameter list will not be visible outside of this definition or declaration 185 | static inline void scx_cgroup_cancel_attach(struct cgroup_taskset *tset) {} | ^~~~~~~~~~~~~~ kernel/sched/core.c:7006:6: warning: no previous prototype for '__setscheduler_prio' [-Wmissing-prototypes] 7006 | void __setscheduler_prio(struct task_struct *p, int prio) | ^~~~~~~~~~~~~~~~~~~ -- In file included from kernel/sched/sched.h:3404, from kernel/sched/fair.c:55: >> kernel/sched/ext.h:182:48: warning: 'struct cgroup_taskset' declared inside parameter list will not be visible outside of this definition or declaration 182 | static inline int scx_cgroup_can_attach(struct cgroup_taskset *tset) { return 0; } | ^~~~~~~~~~~~~~ kernel/sched/ext.h:185:52: warning: 'struct cgroup_taskset' declared inside parameter list will not be visible outside of this definition or declaration 185 | static inline void scx_cgroup_cancel_attach(struct cgroup_taskset *tset) {} | ^~~~~~~~~~~~~~ kernel/sched/fair.c:5937:6: warning: no previous prototype for 'init_cfs_bandwidth' [-Wmissing-prototypes] 5937 | void init_cfs_bandwidth(struct cfs_bandwidth *cfs_b) {} | ^~~~~~~~~~~~~~~~~~ kernel/sched/fair.c:12361:6: warning: no previous prototype for 'free_fair_sched_group' [-Wmissing-prototypes] 12361 | void free_fair_sched_group(struct task_group *tg) { } | ^~~~~~~~~~~~~~~~~~~~~ kernel/sched/fair.c:12363:5: warning: no previous prototype for 'alloc_fair_sched_group' [-Wmissing-prototypes] 12363 | int alloc_fair_sched_group(struct task_group *tg, struct task_group *parent) | ^~~~~~~~~~~~~~~~~~~~~~ kernel/sched/fair.c:12368:6: warning: no previous prototype for 'online_fair_sched_group' [-Wmissing-prototypes] 12368 | void online_fair_sched_group(struct task_group *tg) { } | ^~~~~~~~~~~~~~~~~~~~~~~ kernel/sched/fair.c:12370:6: warning: no previous prototype for 'unregister_fair_sched_group' [-Wmissing-prototypes] 12370 | void unregister_fair_sched_group(struct task_group *tg) { } | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ -- In file included from kernel/sched/sched.h:3404, from kernel/sched/build_policy.c:36: >> kernel/sched/ext.h:182:48: warning: 'struct cgroup_taskset' declared inside parameter list will not be visible outside of this definition or declaration 182 | static inline int scx_cgroup_can_attach(struct cgroup_taskset *tset) { return 0; } | ^~~~~~~~~~~~~~ kernel/sched/ext.h:185:52: warning: 'struct cgroup_taskset' declared inside parameter list will not be visible outside of this definition or declaration 185 | static inline void scx_cgroup_cancel_attach(struct cgroup_taskset *tset) {} | ^~~~~~~~~~~~~~ vim +182 kernel/sched/ext.h 170 171 #ifdef CONFIG_EXT_GROUP_SCHED 172 int scx_tg_online(struct task_group *tg); 173 void scx_tg_offline(struct task_group *tg); 174 int scx_cgroup_can_attach(struct cgroup_taskset *tset); 175 void scx_move_task(struct task_struct *p); 176 void scx_cgroup_finish_attach(void); 177 void scx_cgroup_cancel_attach(struct cgroup_taskset *tset); 178 void scx_group_set_weight(struct task_group *tg, unsigned long cgrp_weight); 179 #else /* CONFIG_EXT_GROUP_SCHED */ 180 static inline int scx_tg_online(struct task_group *tg) { return 0; } 181 static inline void scx_tg_offline(struct task_group *tg) {} > 182 static inline int scx_cgroup_can_attach(struct cgroup_taskset *tset) { return 0; } -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests