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

Link: https://lore.kernel.org/r/20200511135131.27580-14-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>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/Kconfig
drivers/infiniband/ulp/Makefile
drivers/infiniband/ulp/rtrs/Kconfig [new file with mode: 0644]
drivers/infiniband/ulp/rtrs/Makefile [new file with mode: 0644]

index ade8638..477418b 100644 (file)
@@ -107,6 +107,7 @@ source "drivers/infiniband/ulp/srpt/Kconfig"
 
 source "drivers/infiniband/ulp/iser/Kconfig"
 source "drivers/infiniband/ulp/isert/Kconfig"
+source "drivers/infiniband/ulp/rtrs/Kconfig"
 
 source "drivers/infiniband/ulp/opa_vnic/Kconfig"
 
index 437813c..4d0004b 100644 (file)
@@ -5,3 +5,4 @@ obj-$(CONFIG_INFINIBAND_SRPT)           += srpt/
 obj-$(CONFIG_INFINIBAND_ISER)          += iser/
 obj-$(CONFIG_INFINIBAND_ISERT)         += isert/
 obj-$(CONFIG_INFINIBAND_OPA_VNIC)      += opa_vnic/
+obj-$(CONFIG_INFINIBAND_RTRS)          += rtrs/
diff --git a/drivers/infiniband/ulp/rtrs/Kconfig b/drivers/infiniband/ulp/rtrs/Kconfig
new file mode 100644 (file)
index 0000000..9092b62
--- /dev/null
@@ -0,0 +1,27 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+config INFINIBAND_RTRS
+       tristate
+       depends on INFINIBAND_ADDR_TRANS
+
+config INFINIBAND_RTRS_CLIENT
+       tristate "RTRS client module"
+       depends on INFINIBAND_ADDR_TRANS
+       select INFINIBAND_RTRS
+       help
+         RDMA transport client module.
+
+         RDMA Transport (RTRS) client implements a reliable transport layer
+         and also multipathing functionality and that it is intended to be
+         the base layer for a block storage initiator over RDMA.
+
+config INFINIBAND_RTRS_SERVER
+       tristate "RTRS server module"
+       depends on INFINIBAND_ADDR_TRANS
+       select INFINIBAND_RTRS
+       help
+         RDMA transport server module.
+
+         RDMA Transport (RTRS) server module processing connection and IO
+         requests received from the RTRS client module, it will pass the
+         IO requests to its user eg. RNBD_server.
diff --git a/drivers/infiniband/ulp/rtrs/Makefile b/drivers/infiniband/ulp/rtrs/Makefile
new file mode 100644 (file)
index 0000000..3898509
--- /dev/null
@@ -0,0 +1,15 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+rtrs-client-y := rtrs-clt.o \
+                 rtrs-clt-stats.o \
+                 rtrs-clt-sysfs.o
+
+rtrs-server-y := rtrs-srv.o \
+                 rtrs-srv-stats.o \
+                 rtrs-srv-sysfs.o
+
+rtrs-core-y := rtrs.o
+
+obj-$(CONFIG_INFINIBAND_RTRS)        += rtrs-core.o
+obj-$(CONFIG_INFINIBAND_RTRS_CLIENT) += rtrs-client.o
+obj-$(CONFIG_INFINIBAND_RTRS_SERVER) += rtrs-server.o