Re: [PATCH] ACPI: NUMA: Add a node and memblk for each CFMWS not in SRAT

kernel test robot
2021-10-09T03:56:52Z

[-- Attachment #1: Type: text/plain, Size: 3800 bytes --]

Hi,

I love your patch! Yet something to improve:

[auto build test ERROR on next-20211008]
[cannot apply to rafael-pm/linux-next linus/master v5.15-rc4 v5.15-rc3 v5.15-rc2 v5.15-rc4]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url: https://github.com/0day-ci/linux/commits/alison-schofield-intel-com/ACPI-NUMA-Add-a-node-and-memblk-for-each-CFMWS-not-in-SRAT/20211009-094738
base: 683f29b781aeaab6bf302eeb2ef08a5e5f9d8a27
config: ia64-defconfig (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/0day-ci/linux/commit/82ab0c41adad985aa21693dda86949d509ae14e4
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review alison-schofield-intel-com/ACPI-NUMA-Add-a-node-and-memblk-for-each-CFMWS-not-in-SRAT/20211009-094738
git checkout 82ab0c41adad985aa21693dda86949d509ae14e4
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=ia64

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

drivers/acpi/numa/srat.c: In function 'acpi_parse_cfmws':
>> drivers/acpi/numa/srat.c:347:21: error: implicit declaration of function 'numa_add_memblk' [-Werror=implicit-function-declaration]
347 | if (numa_add_memblk(node, start, end) < 0) {
| ^~~~~~~~~~~~~~~
cc1: some warnings being treated as errors

vim +/numa_add_memblk +347 drivers/acpi/numa/srat.c

302
303 /* Add a NUMA node and memblk for each node-less CFMWS */
304 static int __init acpi_parse_cfmws(struct acpi_table_header *acpi_cedt)
305 {
306 struct acpi_cedt_cfmws *cfmws;
307 acpi_size len, cur = 0;
308 void *cedt_subtable;
309 int i, pxm, node;
310 u64 start, end;
311
312 /* Use fake PXM values starting after the max PXM found in the SRAT */
313 for (i = 0; i < MAX_PXM_DOMAINS - 1; i++)
314 if (node_to_pxm_map[i] > pxm)
315 pxm = node_to_pxm_map[i];
316 pxm++;
317
318 len = acpi_cedt->length - sizeof(*acpi_cedt);
319 cedt_subtable = acpi_cedt + 1;
320
321 while (cur < len) {
322 struct acpi_cedt_header *c = cedt_subtable + cur;
323
324 if (c->type != ACPI_CEDT_TYPE_CFMWS)
325 goto next;
326
327 cfmws = cedt_subtable + cur;
328 if (cfmws->header.length < sizeof(*cfmws)) {
329 pr_warn_once("CFMWS entry skipped:invalid length:%u\n",
330 cfmws->header.length);
331 goto next;
332 }
333
334 start = cfmws->base_hpa;
335 end = cfmws->base_hpa + cfmws->window_size;
336
337 /* Skip if the HPA is already assigned to a NUMA node */
338 node = phys_to_target_node(start);
339 if (node != NUMA_NO_NODE)
340 goto next;
341
342 node = acpi_map_pxm_to_node(pxm);
343 if (node == NUMA_NO_NODE) {
344 pr_err("ACPI NUMA: Too many proximity domains.\n");
345 return -EINVAL;
346 }
> 347 if (numa_add_memblk(node, start, end) < 0) {
348 pr_warn("ACPI NUMA: Failed to add memblk for CFMWS node %d [mem %#llx-%#llx]\n",
349 node, start, end);
350 }
351 pxm++;
352 next:
353 cur += c->length;
354 }
355 return 0;
356 }
357

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 20062 bytes --]