nvme-loop: fix nvme-loop Kconfig dependencies

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>
Reported-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@fb.com>
This commit is contained in:
Arnd Bergmann 2016-07-12 08:36:40 -07:00 committed by Jens Axboe
parent 69555af2ce
commit 6eae8c4520

View file

@ -16,8 +16,7 @@ config NVME_TARGET
config NVME_TARGET_LOOP config NVME_TARGET_LOOP
tristate "NVMe loopback device support" tristate "NVMe loopback device support"
depends on BLK_DEV_NVME depends on BLK_DEV_NVME
depends on CONFIGFS_FS depends on NVME_TARGET
select NVME_TARGET
select NVME_FABRICS select NVME_FABRICS
select SG_POOL select SG_POOL
help help
@ -29,7 +28,7 @@ config NVME_TARGET_LOOP
config NVME_TARGET_RDMA config NVME_TARGET_RDMA
tristate "NVMe over Fabrics RDMA target support" tristate "NVMe over Fabrics RDMA target support"
depends on INFINIBAND depends on INFINIBAND
select NVME_TARGET depends on NVME_TARGET
help help
This enables the NVMe RDMA target support, which allows exporting NVMe This enables the NVMe RDMA target support, which allows exporting NVMe
devices over RDMA. devices over RDMA.