lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:   Sat, 22 Jul 2023 07:45:43 +0800
From:   kernel test robot <lkp@...el.com>
To:     Vincent Guittot <vincent.guittot@...aro.org>
Cc:     llvm@...ts.linux.dev, oe-kbuild-all@...ts.linux.dev,
        linux-kernel@...r.kernel.org, Peter Zijlstra <peterz@...radead.org>
Subject: kernel/sched/fair.c:9458:20: warning: stack frame size (1184)
 exceeds limit (1024) in 'update_sd_lb_stats'

Hi Vincent,

First bad commit (maybe != root cause):

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   d192f5382581d972c4ae1b4d72e0b59b34cadeb9
commit: c82a69629c53eda5233f13fc11c3c01585ef48a2 sched/fair: fix case with reduced capacity CPU
date:   1 year ago
config: riscv-randconfig-r022-20230722 (https://download.01.org/0day-ci/archive/20230722/202307220719.ftYLcX0c-lkp@intel.com/config)
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project.git f28c006a5895fc0e329fe15fead81e37457cb1d1)
reproduce: (https://download.01.org/0day-ci/archive/20230722/202307220719.ftYLcX0c-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202307220719.ftYLcX0c-lkp@intel.com/

All warnings (new ones prefixed by >>):

   kernel/sched/fair.c:519:20: warning: unused function 'list_del_leaf_cfs_rq' [-Wunused-function]
   static inline void list_del_leaf_cfs_rq(struct cfs_rq *cfs_rq)
                      ^
   kernel/sched/fair.c:540:19: warning: unused function 'tg_is_idle' [-Wunused-function]
   static inline int tg_is_idle(struct task_group *tg)
                     ^
   kernel/sched/fair.c:5587:20: warning: unused function 'cfs_bandwidth_used' [-Wunused-function]
   static inline bool cfs_bandwidth_used(void)
                      ^
   kernel/sched/fair.c:5595:20: warning: unused function 'sync_throttle' [-Wunused-function]
   static inline void sync_throttle(struct task_group *tg, int cpu) {}
                      ^
   kernel/sched/fair.c:5620:37: warning: unused function 'tg_cfs_bandwidth' [-Wunused-function]
   static inline struct cfs_bandwidth *tg_cfs_bandwidth(struct task_group *tg)
                                       ^
   kernel/sched/fair.c:5624:20: warning: unused function 'destroy_cfs_bandwidth' [-Wunused-function]
   static inline void destroy_cfs_bandwidth(struct cfs_bandwidth *cfs_b) {}
                      ^
>> kernel/sched/fair.c:9458:20: warning: stack frame size (1184) exceeds limit (1024) in 'update_sd_lb_stats' [-Wframe-larger-than]
   static inline void update_sd_lb_stats(struct lb_env *env, struct sd_lb_stats *sds)
                      ^
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   error: A dwo section may not contain relocations
   fatal error: too many errors emitted, stopping now [-ferror-limit=]
   7 warnings and 20 errors generated.


vim +/update_sd_lb_stats +9458 kernel/sched/fair.c

70fb5ccf2ebb09 kernel/sched/fair.c Chen Yu           2022-06-13  9451  
1e3c88bdeb1260 kernel/sched_fair.c Peter Zijlstra    2009-12-17  9452  /**
461819ac8ee950 kernel/sched_fair.c Hui Kang          2011-10-11  9453   * update_sd_lb_stats - Update sched_domain's statistics for load balancing.
cd96891d48a945 kernel/sched/fair.c Randy Dunlap      2012-06-08  9454   * @env: The load balancing environment.
1e3c88bdeb1260 kernel/sched_fair.c Peter Zijlstra    2009-12-17  9455   * @sds: variable to hold the statistics for this sched_domain.
1e3c88bdeb1260 kernel/sched_fair.c Peter Zijlstra    2009-12-17  9456   */
0b0695f2b34a4a kernel/sched/fair.c Vincent Guittot   2019-10-18  9457  
0ec8aa00f2b4dc kernel/sched/fair.c Peter Zijlstra    2013-10-07 @9458  static inline void update_sd_lb_stats(struct lb_env *env, struct sd_lb_stats *sds)
1e3c88bdeb1260 kernel/sched_fair.c Peter Zijlstra    2009-12-17  9459  {
bd939f45da24e2 kernel/sched/fair.c Peter Zijlstra    2012-05-02  9460  	struct sched_domain *child = env->sd->child;
bd939f45da24e2 kernel/sched/fair.c Peter Zijlstra    2012-05-02  9461  	struct sched_group *sg = env->sd->groups;
05b40e05773481 kernel/sched/fair.c Srikar Dronamraju 2017-03-22  9462  	struct sg_lb_stats *local = &sds->local_stat;
56cf515b4b1567 kernel/sched/fair.c Joonsoo Kim       2013-08-06  9463  	struct sg_lb_stats tmp_sgs;
70fb5ccf2ebb09 kernel/sched/fair.c Chen Yu           2022-06-13  9464  	unsigned long sum_util = 0;
630246a06ae2a7 kernel/sched/fair.c Quentin Perret    2018-12-03  9465  	int sg_status = 0;
1e3c88bdeb1260 kernel/sched_fair.c Peter Zijlstra    2009-12-17  9466  
1e3c88bdeb1260 kernel/sched_fair.c Peter Zijlstra    2009-12-17  9467  	do {
56cf515b4b1567 kernel/sched/fair.c Joonsoo Kim       2013-08-06  9468  		struct sg_lb_stats *sgs = &tmp_sgs;
1e3c88bdeb1260 kernel/sched_fair.c Peter Zijlstra    2009-12-17  9469  		int local_group;
1e3c88bdeb1260 kernel/sched_fair.c Peter Zijlstra    2009-12-17  9470  
ae4df9d6c93510 kernel/sched/fair.c Peter Zijlstra    2017-05-01  9471  		local_group = cpumask_test_cpu(env->dst_cpu, sched_group_span(sg));
56cf515b4b1567 kernel/sched/fair.c Joonsoo Kim       2013-08-06  9472  		if (local_group) {
56cf515b4b1567 kernel/sched/fair.c Joonsoo Kim       2013-08-06  9473  			sds->local = sg;
05b40e05773481 kernel/sched/fair.c Srikar Dronamraju 2017-03-22  9474  			sgs = local;
b72ff13ce6021b kernel/sched/fair.c Peter Zijlstra    2013-08-28  9475  
b72ff13ce6021b kernel/sched/fair.c Peter Zijlstra    2013-08-28  9476  			if (env->idle != CPU_NEWLY_IDLE ||
63b2ca30bdb3db kernel/sched/fair.c Nicolas Pitre     2014-05-26  9477  			    time_after_eq(jiffies, sg->sgc->next_update))
63b2ca30bdb3db kernel/sched/fair.c Nicolas Pitre     2014-05-26  9478  				update_group_capacity(env->sd, env->dst_cpu);
56cf515b4b1567 kernel/sched/fair.c Joonsoo Kim       2013-08-06  9479  		}
1e3c88bdeb1260 kernel/sched_fair.c Peter Zijlstra    2009-12-17  9480  
c0d14b57fe0c11 kernel/sched/fair.c Ricardo Neri      2021-09-10  9481  		update_sg_lb_stats(env, sds, sg, sgs, &sg_status);
1e3c88bdeb1260 kernel/sched_fair.c Peter Zijlstra    2009-12-17  9482  
b72ff13ce6021b kernel/sched/fair.c Peter Zijlstra    2013-08-28  9483  		if (local_group)
b72ff13ce6021b kernel/sched/fair.c Peter Zijlstra    2013-08-28  9484  			goto next_group;
b72ff13ce6021b kernel/sched/fair.c Peter Zijlstra    2013-08-28  9485  
1e3c88bdeb1260 kernel/sched_fair.c Peter Zijlstra    2009-12-17  9486  
b72ff13ce6021b kernel/sched/fair.c Peter Zijlstra    2013-08-28  9487  		if (update_sd_pick_busiest(env, sds, sg, sgs)) {
532cb4c401e225 kernel/sched_fair.c Michael Neuling   2010-06-08  9488  			sds->busiest = sg;
56cf515b4b1567 kernel/sched/fair.c Joonsoo Kim       2013-08-06  9489  			sds->busiest_stat = *sgs;
1e3c88bdeb1260 kernel/sched_fair.c Peter Zijlstra    2009-12-17  9490  		}
1e3c88bdeb1260 kernel/sched_fair.c Peter Zijlstra    2009-12-17  9491  
b72ff13ce6021b kernel/sched/fair.c Peter Zijlstra    2013-08-28  9492  next_group:
b72ff13ce6021b kernel/sched/fair.c Peter Zijlstra    2013-08-28  9493  		/* Now, start updating sd_lb_stats */
b72ff13ce6021b kernel/sched/fair.c Peter Zijlstra    2013-08-28  9494  		sds->total_load += sgs->group_load;
63b2ca30bdb3db kernel/sched/fair.c Nicolas Pitre     2014-05-26  9495  		sds->total_capacity += sgs->group_capacity;
b72ff13ce6021b kernel/sched/fair.c Peter Zijlstra    2013-08-28  9496  
70fb5ccf2ebb09 kernel/sched/fair.c Chen Yu           2022-06-13  9497  		sum_util += sgs->group_util;
532cb4c401e225 kernel/sched_fair.c Michael Neuling   2010-06-08  9498  		sg = sg->next;
bd939f45da24e2 kernel/sched/fair.c Peter Zijlstra    2012-05-02  9499  	} while (sg != env->sd->groups);
0ec8aa00f2b4dc kernel/sched/fair.c Peter Zijlstra    2013-10-07  9500  
0b0695f2b34a4a kernel/sched/fair.c Vincent Guittot   2019-10-18  9501  	/* Tag domain that child domain prefers tasks go to siblings first */
0b0695f2b34a4a kernel/sched/fair.c Vincent Guittot   2019-10-18  9502  	sds->prefer_sibling = child && child->flags & SD_PREFER_SIBLING;
0b0695f2b34a4a kernel/sched/fair.c Vincent Guittot   2019-10-18  9503  
f643ea2207010d kernel/sched/fair.c Vincent Guittot   2018-02-13  9504  
0ec8aa00f2b4dc kernel/sched/fair.c Peter Zijlstra    2013-10-07  9505  	if (env->sd->flags & SD_NUMA)
0ec8aa00f2b4dc kernel/sched/fair.c Peter Zijlstra    2013-10-07  9506  		env->fbq_type = fbq_classify_group(&sds->busiest_stat);
4486edd12b5ac8 kernel/sched/fair.c Tim Chen          2014-06-23  9507  
4486edd12b5ac8 kernel/sched/fair.c Tim Chen          2014-06-23  9508  	if (!env->sd->parent) {
2802bf3cd936fe kernel/sched/fair.c Morten Rasmussen  2018-12-03  9509  		struct root_domain *rd = env->dst_rq->rd;
2802bf3cd936fe kernel/sched/fair.c Morten Rasmussen  2018-12-03  9510  
4486edd12b5ac8 kernel/sched/fair.c Tim Chen          2014-06-23  9511  		/* update overload indicator if we are at root domain */
2802bf3cd936fe kernel/sched/fair.c Morten Rasmussen  2018-12-03  9512  		WRITE_ONCE(rd->overload, sg_status & SG_OVERLOAD);
2802bf3cd936fe kernel/sched/fair.c Morten Rasmussen  2018-12-03  9513  
2802bf3cd936fe kernel/sched/fair.c Morten Rasmussen  2018-12-03  9514  		/* Update over-utilization (tipping point, U >= 0) indicator */
2802bf3cd936fe kernel/sched/fair.c Morten Rasmussen  2018-12-03  9515  		WRITE_ONCE(rd->overutilized, sg_status & SG_OVERUTILIZED);
f9f240f96efc5b kernel/sched/fair.c Qais Yousef       2019-06-04  9516  		trace_sched_overutilized_tp(rd, sg_status & SG_OVERUTILIZED);
2802bf3cd936fe kernel/sched/fair.c Morten Rasmussen  2018-12-03  9517  	} else if (sg_status & SG_OVERUTILIZED) {
f9f240f96efc5b kernel/sched/fair.c Qais Yousef       2019-06-04  9518  		struct root_domain *rd = env->dst_rq->rd;
f9f240f96efc5b kernel/sched/fair.c Qais Yousef       2019-06-04  9519  
f9f240f96efc5b kernel/sched/fair.c Qais Yousef       2019-06-04  9520  		WRITE_ONCE(rd->overutilized, SG_OVERUTILIZED);
f9f240f96efc5b kernel/sched/fair.c Qais Yousef       2019-06-04  9521  		trace_sched_overutilized_tp(rd, SG_OVERUTILIZED);
4486edd12b5ac8 kernel/sched/fair.c Tim Chen          2014-06-23  9522  	}
70fb5ccf2ebb09 kernel/sched/fair.c Chen Yu           2022-06-13  9523  
70fb5ccf2ebb09 kernel/sched/fair.c Chen Yu           2022-06-13  9524  	update_idle_cpu_scan(env, sum_util);
532cb4c401e225 kernel/sched_fair.c Michael Neuling   2010-06-08  9525  }
532cb4c401e225 kernel/sched_fair.c Michael Neuling   2010-06-08  9526  

:::::: The code at line 9458 was first introduced by commit
:::::: 0ec8aa00f2b4dc457836ef4e2662b02483e94fb7 sched/numa: Avoid migrating tasks that are placed on their preferred node

:::::: TO: Peter Zijlstra <peterz@...radead.org>
:::::: CC: Ingo Molnar <mingo@...nel.org>

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ