* [linux-stable-rc:linux-4.9.y 9619/9999] kernel/sched/fair.c:4428:1: warning: the frame size of 1152 bytes is larger than 1024 bytes
@ 2020-01-11 2:16 kbuild test robot
0 siblings, 0 replies; only message in thread
From: kbuild test robot @ 2020-01-11 2:16 UTC (permalink / raw
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 6699 bytes --]
tree: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-4.9.y
head: 1a2e1c20280ee186bda4ba786aa4577828fe31f4
commit: bdb6fa8234e59dfb1e0136352adf7684ac9c11af [9619/9999] sched/fair: Scale bandwidth quota and period without losing quota/period ratio precision
config: parisc-allyesconfig (attached as .config)
compiler: hppa-linux-gcc (GCC) 7.5.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout bdb6fa8234e59dfb1e0136352adf7684ac9c11af
# save the attached .config to linux build tree
GCC_VERSION=7.5.0 make.cross ARCH=parisc
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
kernel/sched/fair.c: In function 'sched_cfs_period_timer':
>> kernel/sched/fair.c:4428:1: warning: the frame size of 1152 bytes is larger than 1024 bytes [-Wframe-larger-than=]
}
^
vim +4428 kernel/sched/fair.c
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4376
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4377 static enum hrtimer_restart sched_cfs_period_timer(struct hrtimer *timer)
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4378 {
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4379 struct cfs_bandwidth *cfs_b =
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4380 container_of(timer, struct cfs_bandwidth, period_timer);
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4381 int overrun;
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4382 int idle = 0;
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4383 int count = 0;
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4384
51f2176d74ace4 kernel/sched/fair.c Ben Segall 2014-05-19 4385 raw_spin_lock(&cfs_b->lock);
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4386 for (;;) {
77a4d1a1b9a122 kernel/sched/fair.c Peter Zijlstra 2015-04-15 4387 overrun = hrtimer_forward_now(timer, cfs_b->period);
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4388 if (!overrun)
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4389 break;
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4390
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4391 if (++count > 3) {
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4392 u64 new, old = ktime_to_ns(cfs_b->period);
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4393
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4394 /*
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4395 * Grow period by a factor of 2 to avoid losing precision.
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4396 * Precision loss in the quota/period ratio can cause __cfs_schedulable
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4397 * to fail.
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4398 */
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4399 new = old * 2;
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4400 if (new < max_cfs_quota_period) {
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4401 cfs_b->period = ns_to_ktime(new);
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4402 cfs_b->quota *= 2;
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4403
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4404 pr_warn_ratelimited(
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4405 "cfs_period_timer[cpu%d]: period too short, scaling up (new cfs_period_us = %lld, cfs_quota_us = %lld)\n",
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4406 smp_processor_id(),
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4407 div_u64(new, NSEC_PER_USEC),
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4408 div_u64(cfs_b->quota, NSEC_PER_USEC));
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4409 } else {
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4410 pr_warn_ratelimited(
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4411 "cfs_period_timer[cpu%d]: period too short, but cannot scale up without losing precision (cfs_period_us = %lld, cfs_quota_us = %lld)\n",
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4412 smp_processor_id(),
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4413 div_u64(old, NSEC_PER_USEC),
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4414 div_u64(cfs_b->quota, NSEC_PER_USEC));
bdb6fa8234e59d kernel/sched/fair.c Xuewei Zhang 2019-10-03 4415 }
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4416
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4417 /* reset count so we don't come right back in here */
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4418 count = 0;
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4419 }
33f2a3e176bd50 kernel/sched/fair.c Phil Auld 2019-04-23 4420
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4421 idle = do_sched_cfs_period_timer(cfs_b, overrun);
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4422 }
4cfafd3082afc7 kernel/sched/fair.c Peter Zijlstra 2015-05-14 4423 if (idle)
4cfafd3082afc7 kernel/sched/fair.c Peter Zijlstra 2015-05-14 4424 cfs_b->period_active = 0;
51f2176d74ace4 kernel/sched/fair.c Ben Segall 2014-05-19 4425 raw_spin_unlock(&cfs_b->lock);
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4426
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4427 return idle ? HRTIMER_NORESTART : HRTIMER_RESTART;
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 @4428 }
029632fbb7b7c9 kernel/sched_fair.c Peter Zijlstra 2011-10-25 4429
:::::: The code at line 4428 was first introduced by commit
:::::: 029632fbb7b7c9d85063cc9eb470de6c54873df3 sched: Make separate sched*.c translation units
:::::: TO: Peter Zijlstra <a.p.zijlstra@chello.nl>
:::::: CC: Ingo Molnar <mingo@elte.hu>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org Intel Corporation
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 47002 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2020-01-11 2:16 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-01-11 2:16 [linux-stable-rc:linux-4.9.y 9619/9999] kernel/sched/fair.c:4428:1: warning: the frame size of 1152 bytes is larger than 1024 bytes kbuild test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.