From: kernel test robot <lkp@intel.com>
To: kernel@openeuler.org, Ma Wupeng <mawupeng1@huawei.com>
Cc: oe-kbuild-all@lists.linux.dev
Subject: [openeuler:OLK-6.6 11017/11695] kernel/sched/isolation.c:134:53: error: 'setup_max_cpus' undeclared
Date: Thu, 1 Aug 2024 09:31:41 +0800 [thread overview]
Message-ID: <202408010938.bIyKAerg-lkp@intel.com> (raw)
tree: https://gitee.com/openeuler/kernel.git OLK-6.6
head: e0427893d95be3be1bb71e10dfb53b6f732e8e42
commit: 54bee36be952f18f6a9e8303822459e89daaa336 [11017/11695] sched/isolation: Fix boot crash when maxcpus < first housekeeping CPU
config: x86_64-buildonly-randconfig-004-20240801 (https://download.01.org/0day-ci/archive/20240801/202408010938.bIyKAerg-lkp@intel.com/config)
compiler: gcc-11 (Ubuntu 11.4.0-4ubuntu1) 11.4.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240801/202408010938.bIyKAerg-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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202408010938.bIyKAerg-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from kernel/sched/build_utility.c:105:
kernel/sched/isolation.c: In function 'housekeeping_setup':
>> kernel/sched/isolation.c:134:53: error: 'setup_max_cpus' undeclared (first use in this function)
134 | if (first_cpu >= nr_cpu_ids || first_cpu >= setup_max_cpus) {
| ^~~~~~~~~~~~~~
kernel/sched/isolation.c:134:53: note: each undeclared identifier is reported only once for each function it appears in
vim +/setup_max_cpus +134 kernel/sched/isolation.c
108
109 static int __init housekeeping_setup(char *str, unsigned long flags)
110 {
111 cpumask_var_t non_housekeeping_mask, housekeeping_staging;
112 unsigned int first_cpu;
113 int err = 0;
114
115 if ((flags & HK_FLAG_TICK) && !(housekeeping.flags & HK_FLAG_TICK)) {
116 if (!IS_ENABLED(CONFIG_NO_HZ_FULL)) {
117 pr_warn("Housekeeping: nohz unsupported."
118 " Build with CONFIG_NO_HZ_FULL\n");
119 return 0;
120 }
121 }
122
123 alloc_bootmem_cpumask_var(&non_housekeeping_mask);
124 if (cpulist_parse(str, non_housekeeping_mask) < 0) {
125 pr_warn("Housekeeping: nohz_full= or isolcpus= incorrect CPU range\n");
126 goto free_non_housekeeping_mask;
127 }
128
129 alloc_bootmem_cpumask_var(&housekeeping_staging);
130 cpumask_andnot(housekeeping_staging,
131 cpu_possible_mask, non_housekeeping_mask);
132
133 first_cpu = cpumask_first_and(cpu_present_mask, housekeeping_staging);
> 134 if (first_cpu >= nr_cpu_ids || first_cpu >= setup_max_cpus) {
135 __cpumask_set_cpu(smp_processor_id(), housekeeping_staging);
136 __cpumask_clear_cpu(smp_processor_id(), non_housekeeping_mask);
137 if (!housekeeping.flags) {
138 pr_warn("Housekeeping: must include one present CPU, "
139 "using boot CPU:%d\n", smp_processor_id());
140 }
141 }
142
143 if (cpumask_empty(non_housekeeping_mask))
144 goto free_housekeeping_staging;
145
146 if (!housekeeping.flags) {
147 /* First setup call ("nohz_full=" or "isolcpus=") */
148 enum hk_type type;
149
150 for_each_set_bit(type, &flags, HK_TYPE_MAX)
151 housekeeping_setup_type(type, housekeeping_staging);
152 } else {
153 /* Second setup call ("nohz_full=" after "isolcpus=" or the reverse) */
154 enum hk_type type;
155 unsigned long iter_flags = flags & housekeeping.flags;
156
157 for_each_set_bit(type, &iter_flags, HK_TYPE_MAX) {
158 if (!cpumask_equal(housekeeping_staging,
159 housekeeping.cpumasks[type])) {
160 pr_warn("Housekeeping: nohz_full= must match isolcpus=\n");
161 goto free_housekeeping_staging;
162 }
163 }
164
165 iter_flags = flags & ~housekeeping.flags;
166
167 for_each_set_bit(type, &iter_flags, HK_TYPE_MAX)
168 housekeeping_setup_type(type, housekeeping_staging);
169 }
170
171 if ((flags & HK_FLAG_TICK) && !(housekeeping.flags & HK_FLAG_TICK))
172 tick_nohz_full_setup(non_housekeeping_mask);
173
174 housekeeping.flags |= flags;
175 err = 1;
176
177 free_housekeeping_staging:
178 free_bootmem_cpumask_var(housekeeping_staging);
179 free_non_housekeeping_mask:
180 free_bootmem_cpumask_var(non_housekeeping_mask);
181
182 return err;
183 }
184
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
reply other threads:[~2024-08-01 1:32 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=202408010938.bIyKAerg-lkp@intel.com \
--to=lkp@intel.com \
--cc=kernel@openeuler.org \
--cc=mawupeng1@huawei.com \
--cc=oe-kbuild-all@lists.linux.dev \
/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.