From: kbuild test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [PATCH RFC] sched/fair: Penalty the cfs task which executes mwait/hlt
Date: Thu, 09 Jan 2020 22:33:45 +0800 [thread overview]
Message-ID: <202001092229.43g72LxL%lkp@intel.com> (raw)
In-Reply-To: <1578448201-28218-1-git-send-email-wanpengli@tencent.com>
[-- Attachment #1: Type: text/plain, Size: 4875 bytes --]
Hi Wanpeng,
[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on tip/sched/core]
[also build test ERROR on tip/x86/core tip/auto-latest v5.5-rc5 next-20200108]
[if your patch is applied to the wrong git tree, please drop us a note to help
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/37406982]
url: https://github.com/0day-ci/linux/commits/Wanpeng-Li/sched-fair-Penalty-the-cfs-task-which-executes-mwait-hlt/20200109-183245
base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git 804d402fb6f6487b825aae8cf42fda6426c62867
config: parisc-c3000_defconfig (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
# 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 error/warnings (new ones prefixed by >>):
In file included from include/asm-generic/percpu.h:7:0,
from ./arch/parisc/include/generated/asm/percpu.h:1,
from arch/parisc/include/asm/processor.h:20,
from arch/parisc/include/asm/thread_info.h:8,
from include/linux/thread_info.h:38,
from include/asm-generic/current.h:5,
from ./arch/parisc/include/generated/asm/current.h:1,
from include/linux/sched.h:12,
from kernel/sched/sched.h:5,
from kernel/sched/fair.c:23:
kernel/sched/fair.c: In function 'check_preempt_tick':
>> kernel/sched/fair.c:4157:48: error: 'cpu_is_idle' undeclared (first use in this function); did you mean 'cpu_in_idle'?
if (sched_feat(IDLE_PENALTY) && this_cpu_read(cpu_is_idle) &&
^
include/linux/percpu-defs.h:319:9: note: in definition of macro '__pcpu_size_call_return'
typeof(variable) pscr_ret__; \
^~~~~~~~
>> kernel/sched/fair.c:4157:34: note: in expansion of macro 'this_cpu_read'
if (sched_feat(IDLE_PENALTY) && this_cpu_read(cpu_is_idle) &&
^~~~~~~~~~~~~
kernel/sched/fair.c:4157:48: note: each undeclared identifier is reported only once for each function it appears in
if (sched_feat(IDLE_PENALTY) && this_cpu_read(cpu_is_idle) &&
^
include/linux/percpu-defs.h:319:9: note: in definition of macro '__pcpu_size_call_return'
typeof(variable) pscr_ret__; \
^~~~~~~~
>> kernel/sched/fair.c:4157:34: note: in expansion of macro 'this_cpu_read'
if (sched_feat(IDLE_PENALTY) && this_cpu_read(cpu_is_idle) &&
^~~~~~~~~~~~~
vim +4157 kernel/sched/fair.c
4142
4143 /*
4144 * Preempt the current task with a newly woken task if needed:
4145 */
4146 static void
4147 check_preempt_tick(struct cfs_rq *cfs_rq, struct sched_entity *curr)
4148 {
4149 unsigned long ideal_runtime, delta_exec;
4150 struct sched_entity *se;
4151 s64 delta;
4152 bool resched = false;
4153
4154 ideal_runtime = sched_slice(cfs_rq, curr);
4155 delta_exec = curr->sum_exec_runtime - curr->prev_sum_exec_runtime;
4156
> 4157 if (sched_feat(IDLE_PENALTY) && this_cpu_read(cpu_is_idle) &&
4158 (ideal_runtime > delta_exec)) {
4159 curr->vruntime += calc_delta_fair(ideal_runtime - delta_exec, curr);
4160 update_min_vruntime(cfs_rq);
4161 resched = true;
4162 }
4163 if (delta_exec > ideal_runtime || resched) {
4164 resched_curr(rq_of(cfs_rq));
4165 /*
4166 * The current task ran long enough, ensure it doesn't get
4167 * re-elected due to buddy favours.
4168 */
4169 clear_buddies(cfs_rq, curr);
4170 return;
4171 }
4172
4173 /*
4174 * Ensure that a task that missed wakeup preemption by a
4175 * narrow margin doesn't have to wait for a full slice.
4176 * This also mitigates buddy induced latencies under load.
4177 */
4178 if (delta_exec < sysctl_sched_min_granularity)
4179 return;
4180
4181 se = __pick_first_entity(cfs_rq);
4182 delta = curr->vruntime - se->vruntime;
4183
4184 if (delta < 0)
4185 return;
4186
4187 if (delta > ideal_runtime)
4188 resched_curr(rq_of(cfs_rq));
4189 }
4190
---
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: 15799 bytes --]
next prev parent reply other threads:[~2020-01-09 14:33 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-01-08 1:50 [PATCH RFC] sched/fair: Penalty the cfs task which executes mwait/hlt Wanpeng Li
2020-01-08 15:50 ` Peter Zijlstra
2020-01-08 17:14 ` Paolo Bonzini
2020-01-09 11:53 ` Wanpeng Li
2020-01-13 10:43 ` Peter Zijlstra
2020-01-13 11:18 ` Rafael J. Wysocki
2020-01-13 12:29 ` Peter Zijlstra
2020-01-14 22:46 ` Rafael J. Wysocki
2020-01-13 11:52 ` Paolo Bonzini
2020-01-13 12:35 ` Peter Zijlstra
2020-01-14 10:53 ` Wanpeng Li
2020-01-09 14:33 ` kbuild test robot [this message]
2020-01-10 12:34 ` kbuild test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202001092229.43g72LxL%lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild-all@lists.01.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.