tree:
https://github.com/intel/linux-intel-lts.git 4.19/preempt-rt
head: 5869b5f01603be1b382db99b966071ac9d840daf
commit: cc00a48f20c9ce3f9ae449e55dfdf9fb976ecee1 [5/10] Merge tag
'lts-v4.19.195-base-210628T072840Z' into lts2019/yocto-rt
config: ia64-allmodconfig (attached as .config)
compiler: ia64-linux-gcc (GCC) 11.2.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/linux-intel-lts/commit/cc00a48f20c9ce3f9ae449e55...
git remote add intel-lts
https://github.com/intel/linux-intel-lts.git
git fetch --no-tags intel-lts 4.19/preempt-rt
git checkout cc00a48f20c9ce3f9ae449e55dfdf9fb976ecee1
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir
ARCH=ia64 SHELL=/bin/bash kernel/sched/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
Note: the intel-lts/4.19/preempt-rt HEAD 5869b5f01603be1b382db99b966071ac9d840daf builds
fine.
It only hurts bisectability.
All errors (new ones prefixed by >>):
kernel/sched/fair.c:3656:6: warning: no previous prototype for
'sync_entity_load_avg' [-Wmissing-prototypes]
3656 | void sync_entity_load_avg(struct sched_entity *se)
| ^~~~~~~~~~~~~~~~~~~~
kernel/sched/fair.c:3669:6: warning: no previous prototype for
'remove_entity_load_avg' [-Wmissing-prototypes]
3669 | void remove_entity_load_avg(struct sched_entity *se)
| ^~~~~~~~~~~~~~~~~~~~~~
kernel/sched/fair.c: In function 'select_idle_cpu':
> kernel/sched/fair.c:6190:54: error: 'struct task_struct'
has no member named 'cpus_allowed'; did you mean 'nr_cpus_allowed'?
6190 | cpumask_and(cpus, sched_domain_span(sd), &p->cpus_allowed);
| ^~~~~~~~~~~~
| nr_cpus_allowed
kernel/sched/fair.c: In function 'update_blocked_averages':
kernel/sched/fair.c:7499:14: warning: variable 'done' set but not used
[-Wunused-but-set-variable]
7499 | bool done = true;
| ^~~~
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for FRAME_POINTER
Depends on DEBUG_KERNEL && (M68K || UML || SUPERH) || ARCH_WANT_FRAME_POINTERS
Selected by
- FAULT_INJECTION_STACKTRACE_FILTER && FAULT_INJECTION_DEBUG_FS &&
STACKTRACE_SUPPORT && !X86_64 && !MIPS && !PPC && !S390
&& !MICROBLAZE && !ARM_UNWIND && !ARC && !X86
vim +6190 kernel/sched/fair.c
10e2f1acd0106c Peter Zijlstra 2016-05-09 6151
10e2f1acd0106c Peter Zijlstra 2016-05-09 6152 /*
10e2f1acd0106c Peter Zijlstra 2016-05-09 6153 * Scan the LLC domain for idle CPUs; this
is dynamically regulated by
10e2f1acd0106c Peter Zijlstra 2016-05-09 6154 * comparing the average scan cost
(tracked in sd->avg_scan_cost) against the
10e2f1acd0106c Peter Zijlstra 2016-05-09 6155 * average idle time for this rq (as found
in rq->avg_idle).
10e2f1acd0106c Peter Zijlstra 2016-05-09 6156 */
10e2f1acd0106c Peter Zijlstra 2016-05-09 6157 static int select_idle_cpu(struct
task_struct *p, struct sched_domain *sd, int target)
10e2f1acd0106c Peter Zijlstra 2016-05-09 6158 {
b5cd7f229609cf Cheng Jian 2019-12-13 6159 struct cpumask *cpus =
this_cpu_cpumask_var_ptr(select_idle_mask);
9cfb38a7ba5a9c Wanpeng Li 2016-10-09 6160 struct sched_domain *this_sd;
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6161 u64 avg_cost, avg_idle;
10e2f1acd0106c Peter Zijlstra 2016-05-09 6162 u64 time, cost;
10e2f1acd0106c Peter Zijlstra 2016-05-09 6163 s64 delta;
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6164 int cpu, nr = INT_MAX;
10e2f1acd0106c Peter Zijlstra 2016-05-09 6165
9cfb38a7ba5a9c Wanpeng Li 2016-10-09 6166 this_sd =
rcu_dereference(*this_cpu_ptr(&sd_llc));
9cfb38a7ba5a9c Wanpeng Li 2016-10-09 6167 if (!this_sd)
9cfb38a7ba5a9c Wanpeng Li 2016-10-09 6168 return -1;
9cfb38a7ba5a9c Wanpeng Li 2016-10-09 6169
10e2f1acd0106c Peter Zijlstra 2016-05-09 6170 /*
10e2f1acd0106c Peter Zijlstra 2016-05-09 6171 * Due to large variance we need a large
fuzz factor; hackbench in
10e2f1acd0106c Peter Zijlstra 2016-05-09 6172 * particularly is sensitive here.
10e2f1acd0106c Peter Zijlstra 2016-05-09 6173 */
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6174 avg_idle = this_rq()->avg_idle / 512;
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6175 avg_cost = this_sd->avg_scan_cost +
1;
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6176
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6177 if (sched_feat(SIS_AVG_CPU) &&
avg_idle < avg_cost)
10e2f1acd0106c Peter Zijlstra 2016-05-09 6178 return -1;
10e2f1acd0106c Peter Zijlstra 2016-05-09 6179
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6180 if (sched_feat(SIS_PROP)) {
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6181 u64 span_avg = sd->span_weight *
avg_idle;
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6182 if (span_avg > 4*avg_cost)
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6183 nr = div_u64(span_avg, avg_cost);
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6184 else
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6185 nr = 4;
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6186 }
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6187
10e2f1acd0106c Peter Zijlstra 2016-05-09 6188 time = local_clock();
10e2f1acd0106c Peter Zijlstra 2016-05-09 6189
b5cd7f229609cf Cheng Jian 2019-12-13 @6190 cpumask_and(cpus, sched_domain_span(sd),
&p->cpus_allowed);
b5cd7f229609cf Cheng Jian 2019-12-13 6191
b5cd7f229609cf Cheng Jian 2019-12-13 6192 for_each_cpu_wrap(cpu, cpus, target) {
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6193 if (!--nr)
1ad3aaf3fcd244 Peter Zijlstra 2017-05-17 6194 return -1;
943d355d7feef3 Rohit Jain 2018-05-09 6195 if (available_idle_cpu(cpu))
10e2f1acd0106c Peter Zijlstra 2016-05-09 6196 break;
10e2f1acd0106c Peter Zijlstra 2016-05-09 6197 }
10e2f1acd0106c Peter Zijlstra 2016-05-09 6198
10e2f1acd0106c Peter Zijlstra 2016-05-09 6199 time = local_clock() - time;
10e2f1acd0106c Peter Zijlstra 2016-05-09 6200 cost = this_sd->avg_scan_cost;
10e2f1acd0106c Peter Zijlstra 2016-05-09 6201 delta = (s64)(time - cost) / 8;
10e2f1acd0106c Peter Zijlstra 2016-05-09 6202 this_sd->avg_scan_cost += delta;
10e2f1acd0106c Peter Zijlstra 2016-05-09 6203
10e2f1acd0106c Peter Zijlstra 2016-05-09 6204 return cpu;
10e2f1acd0106c Peter Zijlstra 2016-05-09 6205 }
10e2f1acd0106c Peter Zijlstra 2016-05-09 6206
:::::: The code at line 6190 was first introduced by commit
:::::: b5cd7f229609cf328664aedb056a6fd744e0068b sched/fair: Optimize select_idle_cpu
:::::: TO: Cheng Jian <cj.chengjian(a)huawei.com>
:::::: CC: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org