]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
cxl/acpi: Fix CXL_ACPI and CXL_PMEM Kconfig tristate mismatch
authorKeith Busch <kbusch@kernel.org>
Thu, 5 Mar 2026 20:40:56 +0000 (12:40 -0800)
committerDave Jiang <dave.jiang@intel.com>
Fri, 6 Mar 2026 15:08:53 +0000 (08:08 -0700)
Commit e7e222ad73d9 ("cxl: Move devm_cxl_add_nvdimm_bridge() to
cxl_pmem.ko") moves devm_cxl_add_nvdimm_bridge() into the cxl_pmem file,
which has independent config compile options for built-in or module. The
call from cxl_acpi_probe() is guarded by IS_ENABLED(CONFIG_CXL_PMEM),
which evaluates to true for both =y and =m.

When CONFIG_CXL_PMEM=m, a built-in cxl_acpi attempts to reference a
symbol exported by a module, which fails to link. CXL_PMEM cannot simply
be promoted to =y in this configuration because it depends on LIBNVDIMM,
which may itself be =m.

Add a Kconfig dependency to prevent CXL_ACPI from being built-in when
CXL_PMEM is a module. This contrains CXL_ACPI to =m when CXL_PMEM=m,
while still allowing CXL_ACPI to be freely configured when CXL_PMEM is
either built-in or disabled.

[ dj: Fix up commit reference formatting. ]

Fixes: e7e222ad73d9 ("cxl: Move devm_cxl_add_nvdimm_bridge() to cxl_pmem.ko")
Signed-off-by: Keith Busch <kbusch@kernel.org>
Reviewed-by: Jonathan Cameron <jonathan.cameron@huawei.com>
Reviewed-by: Dan Williams <dan.j.williams@intel.com>
Link: https://patch.msgid.link/20260305204057.1516948-1-kbusch@meta.com
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
drivers/cxl/Kconfig

index 4589bf11d3fe00f89062c5bda4838603ac77eb14..80aeb0d556bd7680b18440d2e5728bd8b0ec45d2 100644 (file)
@@ -59,6 +59,7 @@ config CXL_ACPI
        tristate "CXL ACPI: Platform Support"
        depends on ACPI
        depends on ACPI_NUMA
+       depends on CXL_PMEM || !CXL_PMEM
        default CXL_BUS
        select ACPI_TABLE_LIB
        select ACPI_HMAT