RE: [PATCH 0/7] EDAC: Add Intel Diamond Rapids server support

From: Zhuo, Qiuxu

Date: Fri Nov 21 2025 - 09:25:00 EST


Hi Boris,

> From: Borislav Petkov <bp@xxxxxxxxx>
> Sent: Friday, November 21, 2025 6:59 PM
> To: Zhuo, Qiuxu <qiuxu.zhuo@xxxxxxxxx>
> Cc: Luck, Tony <tony.luck@xxxxxxxxx>; Lai Yi <yi1.lai@xxxxxxxxxxxxxxx>; linux-
> edac@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH 0/7] EDAC: Add Intel Diamond Rapids server support
>
> [...]
> ld: drivers/edac/skx_common.o: in function `skx_get_nvdimm_info':
> skx_common.c:(.text+0x93c): undefined reference to `nfit_get_smbios_id'
> make[2]: *** [scripts/Makefile.vmlinux:72: vmlinux.unstripped] Error 1
> make[1]: *** [/home/amd/kernel/linux/Makefile:1242: vmlinux] Error 2
> make[1]: *** Waiting for unfinished jobs....
> make: *** [Makefile:248: __sub-make] Error 2
>
> It must be coming from this set because I didn't see this before.
>
> .config attached.
>

Thanks for reporting this build error and providing the .config file.
I can reproduce this error with your .config file.

I fixed this error with the following diff, which worked ok on my side.
Could you please check whether this diff works on your side?

Thanks so much in advance!

---

Author: Qiuxu Zhuo <qiuxu.zhuo@xxxxxxxxx>
Date: Fri Nov 21 21:42:13 2025 +0800

EDAC/imh: Fix imh_edac build error when CONFIG_ACPI_NFIT=m and CONFIG_EDAC_IMH=y

When CONFIG_ACPI_NFIT=m and CONFIG_EDAC_IMH=y, it results in the
following build error:

ld: drivers/edac/skx_common.o: in function skx_get_nvdimm_info':
skx_common.c:(.text+0x93c): undefined reference to nfit_get_smbios_id'

This is because the library 'skx_edac_common' needed by the built-in
imh_edac driver calls nfit_get_smbios_id() from the ACPI_NFIT
module. Built-in code can't call functions from modules.

Fix this build error by ensuring CONFIG_EDAC_IMH can't be y when
CONFIG_ACPI_NFIT=m.

Reported-by: Borislav Petkov <bp@xxxxxxxxx>
Closes: https://lore.kernel.org/all/20251121105905.GAaSBF-XQZCXnR6UIx@fat_crate.local/
Signed-off-by: Qiuxu Zhuo <qiuxu.zhuo@xxxxxxxxx>

diff --git a/drivers/edac/Kconfig b/drivers/edac/Kconfig
index dbdfc86656d1..26fa76e162c3 100644
--- a/drivers/edac/Kconfig
+++ b/drivers/edac/Kconfig
@@ -294,6 +294,8 @@ config EDAC_I10NM
config EDAC_IMH
tristate "Intel Integrated Memory/IO Hub MC"
depends on X86_64 && X86_MCE_INTEL && ACPI
+ depends on ACPI_NFIT || !ACPI_NFIT # if ACPI_NFIT=m, EDAC_IMH can't be y
+ select DMI
select ACPI_ADXL
help
Support for error detection and correction the Intel