lkml.org 
[lkml]   [2022]   [Jul]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v10 4/8] mm/demotion/dax/kmem: Set node's performance level to MEMTIER_PERF_LEVEL_PMEM
Hi "Aneesh,

I love your patch! Yet something to improve:

[auto build test ERROR on akpm-mm/mm-everything]

url: https://github.com/intel-lab-lkp/linux/commits/Aneesh-Kumar-K-V/mm-demotion-Memory-tiers-and-demotion/20220720-110356
base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
config: x86_64-randconfig-r004-20220718 (https://download.01.org/0day-ci/archive/20220721/202207211403.1K7X9mSi-lkp@intel.com/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project dd5635541cd7bbd62cd59b6694dfb759b6e9a0d8)
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-lab-lkp/linux/commit/d94a14b8fe93ff567d64b793ce1939698ca0b834
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Aneesh-Kumar-K-V/mm-demotion-Memory-tiers-and-demotion/20220720-110356
git checkout d94a14b8fe93ff567d64b793ce1939698ca0b834
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/acpi/nfit/

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

All errors (new ones prefixed by >>):

drivers/acpi/nfit/core.c:1719:13: warning: no previous prototype for function 'nfit_intel_shutdown_status' [-Wmissing-prototypes]
__weak void nfit_intel_shutdown_status(struct nfit_mem *nfit_mem)
^
drivers/acpi/nfit/core.c:1719:8: note: declare 'static' if the function is not intended to be used outside of this translation unit
__weak void nfit_intel_shutdown_status(struct nfit_mem *nfit_mem)
^
static
>> drivers/acpi/nfit/core.c:3495:37: error: use of undeclared identifier 'MEMTIER_PERF_LEVEL_PMEM'
node_devices[nid]->perf_level = MEMTIER_PERF_LEVEL_PMEM;
^
>> drivers/acpi/nfit/core.c:3551:41: error: use of undeclared identifier 'MEMTIER_HOTPLUG_PRIO'
hotplug_memory_notifier(nfit_callback, MEMTIER_HOTPLUG_PRIO + 1);
^
1 warning and 2 errors generated.


vim +/MEMTIER_PERF_LEVEL_PMEM +3495 drivers/acpi/nfit/core.c

3474
3475 static int nfit_callback(struct notifier_block *self,
3476 unsigned long action, void *arg)
3477 {
3478 bool found = false;
3479 struct memory_notify *mnb = arg;
3480 int nid = mnb->status_change_nid;
3481 struct nfit_spa *nfit_spa;
3482 struct acpi_nfit_desc *acpi_desc;
3483
3484 if (nid == NUMA_NO_NODE || action != MEM_ONLINE)
3485 return NOTIFY_OK;
3486
3487 mutex_lock(&acpi_desc_lock);
3488 list_for_each_entry(acpi_desc, &acpi_descs, list) {
3489 mutex_lock(&acpi_desc->init_mutex);
3490 list_for_each_entry(nfit_spa, &acpi_desc->spas, list) {
3491 struct acpi_nfit_system_address *spa = nfit_spa->spa;
3492 int target_node = pxm_to_node(spa->proximity_domain);
3493
3494 if (target_node == nid) {
> 3495 node_devices[nid]->perf_level = MEMTIER_PERF_LEVEL_PMEM;
3496 found = true;
3497 break;
3498 }
3499 }
3500 mutex_unlock(&acpi_desc->init_mutex);
3501 if (found)
3502 break;
3503 }
3504 mutex_unlock(&acpi_desc_lock);
3505 return NOTIFY_OK;
3506 }
3507
3508 static __init int nfit_init(void)
3509 {
3510 int ret;
3511
3512 BUILD_BUG_ON(sizeof(struct acpi_table_nfit) != 40);
3513 BUILD_BUG_ON(sizeof(struct acpi_nfit_system_address) != 64);
3514 BUILD_BUG_ON(sizeof(struct acpi_nfit_memory_map) != 48);
3515 BUILD_BUG_ON(sizeof(struct acpi_nfit_interleave) != 20);
3516 BUILD_BUG_ON(sizeof(struct acpi_nfit_smbios) != 9);
3517 BUILD_BUG_ON(sizeof(struct acpi_nfit_control_region) != 80);
3518 BUILD_BUG_ON(sizeof(struct acpi_nfit_data_region) != 40);
3519 BUILD_BUG_ON(sizeof(struct acpi_nfit_capabilities) != 16);
3520
3521 guid_parse(UUID_VOLATILE_MEMORY, &nfit_uuid[NFIT_SPA_VOLATILE]);
3522 guid_parse(UUID_PERSISTENT_MEMORY, &nfit_uuid[NFIT_SPA_PM]);
3523 guid_parse(UUID_CONTROL_REGION, &nfit_uuid[NFIT_SPA_DCR]);
3524 guid_parse(UUID_DATA_REGION, &nfit_uuid[NFIT_SPA_BDW]);
3525 guid_parse(UUID_VOLATILE_VIRTUAL_DISK, &nfit_uuid[NFIT_SPA_VDISK]);
3526 guid_parse(UUID_VOLATILE_VIRTUAL_CD, &nfit_uuid[NFIT_SPA_VCD]);
3527 guid_parse(UUID_PERSISTENT_VIRTUAL_DISK, &nfit_uuid[NFIT_SPA_PDISK]);
3528 guid_parse(UUID_PERSISTENT_VIRTUAL_CD, &nfit_uuid[NFIT_SPA_PCD]);
3529 guid_parse(UUID_NFIT_BUS, &nfit_uuid[NFIT_DEV_BUS]);
3530 guid_parse(UUID_NFIT_DIMM, &nfit_uuid[NFIT_DEV_DIMM]);
3531 guid_parse(UUID_NFIT_DIMM_N_HPE1, &nfit_uuid[NFIT_DEV_DIMM_N_HPE1]);
3532 guid_parse(UUID_NFIT_DIMM_N_HPE2, &nfit_uuid[NFIT_DEV_DIMM_N_HPE2]);
3533 guid_parse(UUID_NFIT_DIMM_N_MSFT, &nfit_uuid[NFIT_DEV_DIMM_N_MSFT]);
3534 guid_parse(UUID_NFIT_DIMM_N_HYPERV, &nfit_uuid[NFIT_DEV_DIMM_N_HYPERV]);
3535 guid_parse(UUID_INTEL_BUS, &nfit_uuid[NFIT_BUS_INTEL]);
3536
3537 nfit_wq = create_singlethread_workqueue("nfit");
3538 if (!nfit_wq)
3539 return -ENOMEM;
3540
3541 nfit_mce_register();
3542 ret = acpi_bus_register_driver(&acpi_nfit_driver);
3543 if (ret) {
3544 nfit_mce_unregister();
3545 destroy_workqueue(nfit_wq);
3546 }
3547 /*
3548 * register a memory hotplug notifier at prio 2 so that we
3549 * can update the perf level for the node.
3550 */
> 3551 hotplug_memory_notifier(nfit_callback, MEMTIER_HOTPLUG_PRIO + 1);
3552 return ret;
3553

--
0-DAY CI Kernel Test Service
https://01.org/lkp

\
 
 \ /
  Last update: 2022-07-21 08:07    [W:0.264 / U:0.216 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site