linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] nvme-loop: add configfs dependency
@ 2016-07-07  9:01 Arnd Bergmann
  2016-07-07 14:35 ` Jens Axboe
  0 siblings, 1 reply; 7+ messages in thread
From: Arnd Bergmann @ 2016-07-07  9:01 UTC (permalink / raw)
  To: Christoph Hellwig, Sagi Grimberg
  Cc: Arnd Bergmann, Jens Axboe, linux-nvme, linux-kernel

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.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Fixes: 3a85a5de29ea ("nvme-loop: add a NVMe loopback host driver")
---
 drivers/nvme/target/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/nvme/target/Kconfig b/drivers/nvme/target/Kconfig
index b77ce4350695..6bbd7890c3ad 100644
--- a/drivers/nvme/target/Kconfig
+++ b/drivers/nvme/target/Kconfig
@@ -16,6 +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
 	select NVME_FABRICS
 	select SG_POOL
-- 
2.9.0

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH] nvme-loop: add configfs dependency
  2016-07-07  9:01 [PATCH] nvme-loop: add configfs dependency Arnd Bergmann
@ 2016-07-07 14:35 ` Jens Axboe
  2016-07-10 12:14   ` Christoph Hellwig
  0 siblings, 1 reply; 7+ messages in thread
From: Jens Axboe @ 2016-07-07 14:35 UTC (permalink / raw)
  To: Arnd Bergmann, Christoph Hellwig, Sagi Grimberg
  Cc: Jens Axboe, linux-nvme, linux-kernel

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

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] nvme-loop: add configfs dependency
  2016-07-07 14:35 ` Jens Axboe
@ 2016-07-10 12:14   ` Christoph Hellwig
  2016-07-11 16:12     ` J Freyensee
                       ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Christoph Hellwig @ 2016-07-10 12:14 UTC (permalink / raw)
  To: Jens Axboe
  Cc: Arnd Bergmann, Christoph Hellwig, Sagi Grimberg, Jens Axboe,
	linux-nvme, linux-kernel

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

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] nvme-loop: add configfs dependency
  2016-07-10 12:14   ` Christoph Hellwig
@ 2016-07-11 16:12     ` J Freyensee
  2016-07-11 20:29     ` Arnd Bergmann
  2016-07-12 15:38     ` Jens Axboe
  2 siblings, 0 replies; 7+ messages in thread
From: J Freyensee @ 2016-07-11 16:12 UTC (permalink / raw)
  To: Christoph Hellwig, Jens Axboe
  Cc: Sagi Grimberg, Arnd Bergmann, linux-kernel, linux-nvme,
	Jens Axboe

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

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] nvme-loop: add configfs dependency
  2016-07-10 12:14   ` Christoph Hellwig
  2016-07-11 16:12     ` J Freyensee
@ 2016-07-11 20:29     ` Arnd Bergmann
  2016-07-12 15:36       ` Jens Axboe
  2016-07-12 15:38     ` Jens Axboe
  2 siblings, 1 reply; 7+ messages in thread
From: Arnd Bergmann @ 2016-07-11 20:29 UTC (permalink / raw)
  To: Christoph Hellwig
  Cc: Jens Axboe, Sagi Grimberg, Jens Axboe, linux-nvme, linux-kernel

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 <arnd@arndb.de>

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.

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH] nvme-loop: add configfs dependency
  2016-07-11 20:29     ` Arnd Bergmann
@ 2016-07-12 15:36       ` Jens Axboe
  0 siblings, 0 replies; 7+ messages in thread
From: Jens Axboe @ 2016-07-12 15:36 UTC (permalink / raw)
  To: Arnd Bergmann, Christoph Hellwig
  Cc: Jens Axboe, Sagi Grimberg, linux-nvme, linux-kernel

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

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] nvme-loop: add configfs dependency
  2016-07-10 12:14   ` Christoph Hellwig
  2016-07-11 16:12     ` J Freyensee
  2016-07-11 20:29     ` Arnd Bergmann
@ 2016-07-12 15:38     ` Jens Axboe
  2 siblings, 0 replies; 7+ messages in thread
From: Jens Axboe @ 2016-07-12 15:38 UTC (permalink / raw)
  To: Christoph Hellwig, Jens Axboe
  Cc: Arnd Bergmann, Sagi Grimberg, linux-nvme, linux-kernel

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

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2016-07-12 15:40 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-07-07  9:01 [PATCH] nvme-loop: add configfs dependency Arnd Bergmann
2016-07-07 14:35 ` Jens Axboe
2016-07-10 12:14   ` Christoph Hellwig
2016-07-11 16:12     ` J Freyensee
2016-07-11 20:29     ` Arnd Bergmann
2016-07-12 15:36       ` Jens Axboe
2016-07-12 15:38     ` Jens Axboe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).