diff mbox series

[v6,13/25] rtrs: include client and server modules into kernel compilation

Message ID 20191230102942.18395-14-jinpuwang@gmail.com (mailing list archive)
State New, archived
Headers show
Series RTRS (former IBTRS) rdma transport library and RNBD (former IBNBD) rdma network block device | expand

Commit Message

Jinpu Wang Dec. 30, 2019, 10:29 a.m. UTC
From: Jack Wang <jinpu.wang@cloud.ionos.com>

Add rtrs Makefile, Kconfig and also corresponding lines into upper
layer infiniband/ulp files.

Signed-off-by: Danil Kipnis <danil.kipnis@cloud.ionos.com>
Signed-off-by: Jack Wang <jinpu.wang@cloud.ionos.com>
---
 drivers/infiniband/Kconfig           |  1 +
 drivers/infiniband/ulp/Makefile      |  1 +
 drivers/infiniband/ulp/rtrs/Kconfig  | 27 +++++++++++++++++++++++++++
 drivers/infiniband/ulp/rtrs/Makefile | 17 +++++++++++++++++
 4 files changed, 46 insertions(+)
 create mode 100644 drivers/infiniband/ulp/rtrs/Kconfig
 create mode 100644 drivers/infiniband/ulp/rtrs/Makefile

Comments

Bart Van Assche Jan. 2, 2020, 10:11 p.m. UTC | #1
On 12/30/19 2:29 AM, Jack Wang wrote:
> +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.
> +
> +	  RTRS client allows for simplified data transfer and connection
> +	  establishment over RDMA (InfiniBand, RoCE, iWarp). Uses BIO-like
> +	  READ/WRITE semantics and provides multipath capabilities.

What does "simplified" mean in this context? I'm concerned that 
including that word will cause confusion. How about writing that RTRS 
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.
> +
> +	  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.

Users who see these help texts will be left wondering what RTRS stands 
for. Please add some text that explains what the RTRS abbreviation 
stands for.

Thanks,

Bart.
Jinpu Wang Jan. 3, 2020, 4:19 p.m. UTC | #2
On Thu, Jan 2, 2020 at 11:11 PM Bart Van Assche <bvanassche@acm.org> wrote:
>
> On 12/30/19 2:29 AM, Jack Wang wrote:
> > +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.
> > +
> > +       RTRS client allows for simplified data transfer and connection
> > +       establishment over RDMA (InfiniBand, RoCE, iWarp). Uses BIO-like
> > +       READ/WRITE semantics and provides multipath capabilities.
>
> What does "simplified" mean in this context? I'm concerned that
> including that word will cause confusion. How about writing that RTRS
> 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?
Sounds fine, will explains what the RTRS abbreviation
>
> > +config INFINIBAND_RTRS_SERVER
> > +     tristate "RTRS server module"
> > +     depends on INFINIBAND_ADDR_TRANS
> > +     select INFINIBAND_RTRS
> > +     help
> > +       RDMA transport server module.
> > +
> > +       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.
>
> Users who see these help texts will be left wondering what RTRS stands
> for. Please add some text that explains what the RTRS abbreviation
> stands for.
>
> Thanks,
>
> Bart.
Thanks.
diff mbox series

Patch

diff --git a/drivers/infiniband/Kconfig b/drivers/infiniband/Kconfig
index ade86388434f..477418b37786 100644
--- a/drivers/infiniband/Kconfig
+++ b/drivers/infiniband/Kconfig
@@ -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"
 
diff --git a/drivers/infiniband/ulp/Makefile b/drivers/infiniband/ulp/Makefile
index 437813c7b481..4d0004b58377 100644
--- a/drivers/infiniband/ulp/Makefile
+++ b/drivers/infiniband/ulp/Makefile
@@ -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
index 000000000000..1d6c670a4504
--- /dev/null
+++ b/drivers/infiniband/ulp/rtrs/Kconfig
@@ -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.
+
+	  RTRS client allows for simplified data transfer and connection
+	  establishment over RDMA (InfiniBand, RoCE, iWarp). Uses BIO-like
+	  READ/WRITE semantics and provides multipath capabilities.
+
+config INFINIBAND_RTRS_SERVER
+	tristate "RTRS server module"
+	depends on INFINIBAND_ADDR_TRANS
+	select INFINIBAND_RTRS
+	help
+	  RDMA transport server module.
+
+	  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
index 000000000000..89332be15c9e
--- /dev/null
+++ b/drivers/infiniband/ulp/rtrs/Makefile
@@ -0,0 +1,17 @@ 
+# 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
+
+-include $(src)/compat/compat.mk