Re: [PATCH] nvme-loop: add configfs dependency
On 07/07/2016 03:01 AM, Arnd Bergmann wrote: CONFIG_NVME_TARGET has a correct CONFIG_CONFIGFS_FS dependency, but the newly added NVME_TARGET_LOOP is missing this, resulting in a link failure: drivers/nvme/built-in.o: In function `nvmet_init_configfs': loop.c:(.init.text+0x2a0): undefined reference to `config_group_init' loop.c:(.init.text+0x2c0): undefined reference to `config_group_init_type_name' loop.c:(.init.text+0x318): undefined reference to `configfs_register_subsystem' drivers/nvme/built-in.o: In function `nvmet_exit_configfs': loop.c:(.exit.text+0x9c): undefined reference to `configfs_unregister_subsystem' This adds the same dependency here. Thanks Arnd, applied. -- Jens Axboe
Re: [PATCH] nvme-loop: add configfs dependency
On Thu, Jul 07, 2016 at 08:35:17AM -0600, Jens Axboe wrote: > Thanks Arnd, applied. Actually I think we should replace the select with the depends. In fact I though I had done that a while ago, but I must have messed it up. Btw - do you plan to grab patches directly from the list now or do you want me to queue them up? There are a few more pending on the list that should go in: http://lists.infradead.org/pipermail/linux-nvme/2016-June/005150.html (whole series) http://lists.infradead.org/pipermail/linux-nvme/2016-July/005290.html (needs the attribution fixed to be from Ming) http://lists.infradead.org/pipermail/linux-nvme/2016-July/005318.html
Re: [PATCH] nvme-loop: add configfs dependency
On Sun, 2016-07-10 at 14:14 +0200, Christoph Hellwig wrote: > On Thu, Jul 07, 2016 at 08:35:17AM -0600, Jens Axboe wrote: > > Thanks Arnd, applied. > > Actually I think we should replace the select with the depends. In > fact I though I had done that a while ago, but I must have messed it > up. > > Btw - do you plan to grab patches directly from the list now or > do you want me to queue them up? There are a few more pending on > the list that should go in: > > http://lists.infradead.org/pipermail/linux-nvme/2016-June/005150.html > (whole series) > > http://lists.infradead.org/pipermail/linux-nvme/2016-July/005290.html > (needs the attribution fixed to be from Ming) I can re-send the patch changing "Fix by: " to "From: " if that helps. Jay
Re: [PATCH] nvme-loop: add configfs dependency
On Sunday, July 10, 2016 2:14:17 PM CEST Christoph Hellwig wrote: > On Thu, Jul 07, 2016 at 08:35:17AM -0600, Jens Axboe wrote: > > Thanks Arnd, applied. > > Actually I think we should replace the select with the depends. In > fact I though I had done that a while ago, but I must have messed it up. Makes sense. I ran into the same problem on NVME_TARGET_RDMA now, which otherwise needs dependencies on both CONFIG_BLOCK and CONFIGFS_FS: warning: (NVME_TARGET_LOOP && NVME_TARGET_RDMA) selects NVME_TARGET which has unmet direct dependencies (BLOCK && CONFIGFS_FS) 0xA002B368 Mon Jul 11 18:00:45 CEST 2016 failed In file included from ../drivers/nvme/target/core.c:16:0: drivers/nvme/target/nvmet.h:222:14: error: field 'inline_bio' has incomplete type struct bio inline_bio; ^~ drivers/nvme/target/core.c: In function 'nvmet_async_event_work': drivers/nvme/target/core.c:98:3: error: implicit declaration of function 'kfree' [-Werror=implicit-function-declaration] kfree(aen); ^ ../drivers/nvme/target/core.c: In function 'nvmet_ns_enable': ../drivers/nvme/target/core.c:269:13: error: implicit declaration of function 'blkdev_get_by_path' [-Werror=implicit-function-declaration] ns->bdev = blkdev_get_by_path(ns->device_path, FMODE_READ | FMODE_WRITE, Folding in my patch below should address that too. Signed-off-by: Arnd Bergmann diff --git a/drivers/nvme/target/Kconfig b/drivers/nvme/target/Kconfig index 0be9e3d4c352..a5c31cbeb481 100644 --- a/drivers/nvme/target/Kconfig +++ b/drivers/nvme/target/Kconfig @@ -16,8 +16,7 @@ config NVME_TARGET config NVME_TARGET_LOOP tristate "NVMe loopback device support" depends on BLK_DEV_NVME - depends on CONFIGFS_FS - select NVME_TARGET + depends on NVME_TARGET select NVME_FABRICS select SG_POOL help @@ -29,7 +28,7 @@ config NVME_TARGET_LOOP config NVME_TARGET_RDMA tristate "NVMe over Fabrics RDMA target support" depends on INFINIBAND - select NVME_TARGET + depends on NVME_TARGET help This enables the NVMe RDMA target support, which allows exporting NVMe devices over RDMA.
Re: [PATCH] nvme-loop: add configfs dependency
On 07/11/2016 01:29 PM, Arnd Bergmann wrote: On Sunday, July 10, 2016 2:14:17 PM CEST Christoph Hellwig wrote: On Thu, Jul 07, 2016 at 08:35:17AM -0600, Jens Axboe wrote: Thanks Arnd, applied. Actually I think we should replace the select with the depends. In fact I though I had done that a while ago, but I must have messed it up. Makes sense. I ran into the same problem on NVME_TARGET_RDMA now, which otherwise needs dependencies on both CONFIG_BLOCK and CONFIGFS_FS: warning: (NVME_TARGET_LOOP && NVME_TARGET_RDMA) selects NVME_TARGET which has unmet direct dependencies (BLOCK && CONFIGFS_FS) 0xA002B368 Mon Jul 11 18:00:45 CEST 2016 failed In file included from ../drivers/nvme/target/core.c:16:0: drivers/nvme/target/nvmet.h:222:14: error: field 'inline_bio' has incomplete type struct bio inline_bio; ^~ drivers/nvme/target/core.c: In function 'nvmet_async_event_work': drivers/nvme/target/core.c:98:3: error: implicit declaration of function 'kfree' [-Werror=implicit-function-declaration] kfree(aen); ^ ../drivers/nvme/target/core.c: In function 'nvmet_ns_enable': ../drivers/nvme/target/core.c:269:13: error: implicit declaration of function 'blkdev_get_by_path' [-Werror=implicit-function-declaration] ns->bdev = blkdev_get_by_path(ns->device_path, FMODE_READ | FMODE_WRITE, Folding in my patch below should address that too. I folded this in. -- Jens Axboe
Re: [PATCH] nvme-loop: add configfs dependency
On 07/10/2016 05:14 AM, Christoph Hellwig wrote: On Thu, Jul 07, 2016 at 08:35:17AM -0600, Jens Axboe wrote: Thanks Arnd, applied. Actually I think we should replace the select with the depends. In fact I though I had done that a while ago, but I must have messed it up. Btw - do you plan to grab patches directly from the list now or do you want me to queue them up? There are a few more pending on the list that should go in: If I come across them and they have been reviewed by others too, or are obvious, then I'll grab them myself. Explicit pointers always welcome, as I don't monitor the list closely... https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.infradead.org_pipermail_linux-2Dnvme_2016-2DJune_005150.html&d=CwIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=cK1a7KivzZRh1fKQMjSm2A&m=bgqP-UoFFzFT3ClF6DBpyUwoJ6lPKGSA3OVJ2EjxPVc&s=vIJnf_HSLe_wa5Xlw8ciQ8Sue2IAJMHSxu3CtitaTbY&e= (whole series) https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.infradead.org_pipermail_linux-2Dnvme_2016-2DJuly_005290.html&d=CwIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=cK1a7KivzZRh1fKQMjSm2A&m=bgqP-UoFFzFT3ClF6DBpyUwoJ6lPKGSA3OVJ2EjxPVc&s=Z0Nkz6fXe6JrYCzwldDutoL2bEed99kWD8VkA0x-bdU&e= (needs the attribution fixed to be from Ming) https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.infradead.org_pipermail_linux-2Dnvme_2016-2DJuly_005318.html&d=CwIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=cK1a7KivzZRh1fKQMjSm2A&m=bgqP-UoFFzFT3ClF6DBpyUwoJ6lPKGSA3OVJ2EjxPVc&s=lgZaUxNvX7Pp7iYIB1CcpItKvekVsmMebSvFddG6GEg&e= Sorry for the FB mangling of those URLs, but I folded these in. -- Jens Axboe