OSDN Git Service

block/rnbd: include client and server modules into kernel compilation
authorJack Wang <jinpu.wang@cloud.ionos.com>
Mon, 11 May 2020 13:51:29 +0000 (15:51 +0200)
committerJason Gunthorpe <jgg@mellanox.com>
Sun, 17 May 2020 21:57:17 +0000 (18:57 -0300)
Add rnbd Makefile, Kconfig and also corresponding lines into upper block
layer files.

Link: https://lore.kernel.org/r/20200511135131.27580-24-danil.kipnis@cloud.ionos.com
Signed-off-by: Danil Kipnis <danil.kipnis@cloud.ionos.com>
Signed-off-by: Jack Wang <jinpu.wang@cloud.ionos.com>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Acked-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/block/Kconfig
drivers/block/Makefile
drivers/block/rnbd/Kconfig [new file with mode: 0644]
drivers/block/rnbd/Makefile [new file with mode: 0644]

index 025b1b7..084b9ef 100644 (file)
@@ -458,4 +458,6 @@ config BLK_DEV_RSXX
          To compile this driver as a module, choose M here: the
          module will be called rsxx.
 
+source "drivers/block/rnbd/Kconfig"
+
 endif # BLK_DEV
index 795facd..e1f6311 100644 (file)
@@ -39,6 +39,7 @@ obj-$(CONFIG_BLK_DEV_PCIESSD_MTIP32XX)        += mtip32xx/
 
 obj-$(CONFIG_BLK_DEV_RSXX) += rsxx/
 obj-$(CONFIG_ZRAM) += zram/
+obj-$(CONFIG_BLK_DEV_RNBD)     += rnbd/
 
 obj-$(CONFIG_BLK_DEV_NULL_BLK) += null_blk.o
 null_blk-objs  := null_blk_main.o
diff --git a/drivers/block/rnbd/Kconfig b/drivers/block/rnbd/Kconfig
new file mode 100644 (file)
index 0000000..4b6d3d8
--- /dev/null
@@ -0,0 +1,28 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+config BLK_DEV_RNBD
+       bool
+
+config BLK_DEV_RNBD_CLIENT
+       tristate "RDMA Network Block Device driver client"
+       depends on INFINIBAND_RTRS_CLIENT
+       select BLK_DEV_RNBD
+       help
+         RNBD client is a network block device driver using rdma transport.
+
+         RNBD client allows for mapping of a remote block devices over
+         RTRS protocol from a target system where RNBD server is running.
+
+         If unsure, say N.
+
+config BLK_DEV_RNBD_SERVER
+       tristate "RDMA Network Block Device driver server"
+       depends on INFINIBAND_RTRS_SERVER
+       select BLK_DEV_RNBD
+       help
+         RNBD server is the server side of RNBD using rdma transport.
+
+         RNBD server allows for exporting local block devices to a remote client
+         over RTRS protocol.
+
+         If unsure, say N.
diff --git a/drivers/block/rnbd/Makefile b/drivers/block/rnbd/Makefile
new file mode 100644 (file)
index 0000000..5bb1a7a
--- /dev/null
@@ -0,0 +1,15 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+ccflags-y := -I$(srctree)/drivers/infiniband/ulp/rtrs
+
+rnbd-client-y := rnbd-clt.o \
+                 rnbd-clt-sysfs.o \
+                 rnbd-common.o
+
+rnbd-server-y := rnbd-common.o \
+                 rnbd-srv.o \
+                 rnbd-srv-dev.o \
+                 rnbd-srv-sysfs.o
+
+obj-$(CONFIG_BLK_DEV_RNBD_CLIENT) += rnbd-client.o
+obj-$(CONFIG_BLK_DEV_RNBD_SERVER) += rnbd-server.o