Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1480233
| Path | csiph.com!news.redatomik.org!aioe.org!bofh.it!news.nic.it!robomod |
|---|---|
| From | Ross Zwisler <ross.zwisler@linux.intel.com> |
| Newsgroups | linux.kernel |
| Subject | [PATCH] /dev/dax: fix Kconfig dependency build breakage |
| Date | Fri, 09 Sep 2016 20:00:01 +0200 |
| Message-ID | <sfyfL-61P-9@gated-at.bofh.it> (permalink) |
| X-Original-To | linux-kernel@vger.kernel.org |
| X-Extloop1 | 1 |
| X-Ironport-Av | E=Sophos;i="5.30,306,1470726000"; d="scan'208";a="758890745" |
| X-Mailer | git-send-email 2.9.0 |
| Sender | robomod@news.nic.it |
| List-ID | <linux-kernel.vger.kernel.org> |
| X-Mailing-List | linux-kernel@vger.kernel.org |
| Approved | robomod@news.nic.it |
| Lines | 49 |
| Organization | linux.* mail to news gateway |
| X-Original-Cc | Ross Zwisler <ross.zwisler@linux.intel.com>, Dan Williams <dan.j.williams@intel.com>, linux-nvdimm@lists.01.org |
| X-Original-Date | Fri, 9 Sep 2016 11:56:52 -0600 |
| X-Original-Message-ID | <20160909175652.10267-1-ross.zwisler@linux.intel.com> |
| X-Original-Sender | linux-kernel-owner@vger.kernel.org |
| Xref | csiph.com linux.kernel:1480233 |
Show key headers only | View raw
The function dax_pmem_probe() in drivers/dax/pmem.c is compiled under the CONFIG_DEV_DAX_PMEM tri-state config option. This config option currently only depends on CONFIG_NVDIMM_DAX, which means that the following configuration is possible: CONFIG_LIBNVDIMM=m ... CONFIG_NVDIMM_DAX=y CONFIG_DEV_DAX=y CONFIG_DEV_DAX_PMEM=y With this config LIBNVDIMM is compiled as a module with NVDIMM_DAX=y just meaning that we will compile drivers/nvdimm/dax_devs.c into that module. However, dax_pmem_probe() depends on several symbols defined in drivers/nvdimm/dax_devs.c, which results in the following build errors: drivers/built-in.o: In function `dax_pmem_probe': linux/drivers/dax/pmem.c:70: undefined reference to `to_nd_dax' linux/drivers/dax/pmem.c:74: undefined reference to `nvdimm_namespace_common_probe' linux/drivers/dax/pmem.c:80: undefined reference to `devm_nsio_enable' linux/drivers/dax/pmem.c:81: undefined reference to `nvdimm_setup_pfn' linux/drivers/dax/pmem.c:84: undefined reference to `devm_nsio_disable' linux/drivers/dax/pmem.c:122: undefined reference to `to_nd_region' drivers/built-in.o: In function `dax_pmem_init': linux/drivers/dax/pmem.c:147: undefined reference to `__nd_driver_register' Fix this by making CONFIG_DEV_DAX_PMEM explicitly depend on CONFIG_LIBNVDIMM. This prevents dax_devs.c from being built as a built-in while its dependencies are in the libnvdimm.ko module. Signed-off-by: Ross Zwisler <ross.zwisler@linux.intel.com> --- drivers/dax/Kconfig | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/dax/Kconfig b/drivers/dax/Kconfig index cedab75..5cd9436 100644 --- a/drivers/dax/Kconfig +++ b/drivers/dax/Kconfig @@ -15,6 +15,7 @@ if DEV_DAX config DEV_DAX_PMEM tristate "PMEM DAX: direct access to persistent memory" depends on NVDIMM_DAX + depends on LIBNVDIMM default DEV_DAX help Support raw access to persistent memory. Note that this -- 2.9.0
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
[PATCH] /dev/dax: fix Kconfig dependency build breakage Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-09-09 20:00 +0200
Re: [PATCH] /dev/dax: fix Kconfig dependency build breakage Dan Williams <dan.j.williams@intel.com> - 2016-09-09 20:20 +0200
[PATCH v2] /dev/dax: fix Kconfig dependency build breakage Ross Zwisler <ross.zwisler@linux.intel.com> - 2016-09-12 18:20 +0200
Re: [PATCH v2] /dev/dax: fix Kconfig dependency build breakage Dan Williams <dan.j.williams@intel.com> - 2016-09-13 02:40 +0200
csiph-web