On 9/1/20 1:57 PM, Joao Martins wrote:
On 8/31/20 8:38 PM, Andrew Morton wrote:
> (cc Vishal & Joao)
>
> On Mon, 31 Aug 2020 15:11:42 +0800 kernel test robot <lkp(a)intel.com> wrote:
>
>> tree:
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
master
>> head: b36c969764ab12faebb74711c942fa3e6eaf1e96
>> commit: f7782cc946fea99b8a4a0a83b6c3775a6beff8ce [3093/3958] ACPI: HMAT: refactor
hmat_register_target_device to hmem_register_device
>> config: arm64-randconfig-r016-20200831 (attached as .config)
>> compiler: aarch64-linux-gcc (GCC) 9.3.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
>> git checkout f7782cc946fea99b8a4a0a83b6c3775a6beff8ce
>> # save the attached .config to linux build tree
>> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm64
>>
>> If you fix the issue, kindly add following tag as appropriate
>> Reported-by: kernel test robot <lkp(a)intel.com>
>>
>> All errors (new ones prefixed by >>):
>>
>> aarch64-linux-ld: drivers/acpi/numa/hmat.o: in function
`hmat_register_target_devices':
>>>> drivers/acpi/numa/hmat.c:658: undefined reference to
`hmem_register_device'
>>
Here's a proposed fix (first patch) but I'm not sure if there's a better
one, though. Also, after fixing the one reported above, there's an additional flaw
with the reported kconfig. Specifically ARM64 with NUMA=y and MEMORY_HOTPLUG=n.
It wasn't reported above, but we would see it right after. See the second patch for
that.
The two patches could be just one patch as they are introduced by the refactor above
("ACPI: HMAT: refactor hmat_register_target_device to hmem_register_device"),
but thought
I would split them up per-issue while we discuss the fix. I can attach them merged if
you
prefer.
lkp now reported the second bug, but the problem is introduced elsewhere when we
start
using phys_to_target_node() in hmem_register_device(), which is unrelated to this
regression. I'll comment on today's failure with the adjusted fix.
Meanwhile for this one, see below the scissors mark (re-sending it as I forgot the
Reported-by).
--------------------------->8----------------------------
From a902a7304a5cdbd3484bdc4cdcd762520edbfd20 Mon Sep 17 00:00:00 2001
From: Joao Martins <joao.m.martins(a)oracle.com>
Date: Tue, 1 Sep 2020 07:29:44 -0400
Subject: [PATCH] device-dax: CONFIG_DEV_DAX_HMEM_DEVICES should depend on
CONFIG_DAX=y
HMAT requires hmem_register_device() which is now placed
under drivers/dax. ACPI_HMAT is a bool and built-in, and to
use hmem_register_device() CONFIG_DAX also needs to be builtin.
Reported-by: kernel test robot <lkp(a)intel.com>
Signed-off-by: Joao Martins <joao.m.martins(a)oracle.com>
---
drivers/dax/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/dax/Kconfig b/drivers/dax/Kconfig
index a229f45d34aa..a66dff78f298 100644
--- a/drivers/dax/Kconfig
+++ b/drivers/dax/Kconfig
@@ -49,7 +49,7 @@ config DEV_DAX_HMEM
Say M if unsure.
config DEV_DAX_HMEM_DEVICES
- depends on DEV_DAX_HMEM
+ depends on DEV_DAX_HMEM && DAX=y
def_bool y
config DEV_DAX_KMEM
--
2.17.1