From: Roman Pen <roman.penyaev@xxxxxxxxxxxxxxxx> Add IBNBD Makefile, Kconfig and also corresponding lines into upper block layer files. Signed-off-by: Danil Kipnis <danil.kipnis@xxxxxxxxxxxxxxx> Signed-off-by: Jack Wang <jinpu.wang@xxxxxxxxxxxxxxx> --- drivers/block/Kconfig | 2 ++ drivers/block/Makefile | 1 + drivers/block/ibnbd/Kconfig | 24 ++++++++++++++++++++++++ drivers/block/ibnbd/Makefile | 13 +++++++++++++ 4 files changed, 40 insertions(+) create mode 100644 drivers/block/ibnbd/Kconfig create mode 100644 drivers/block/ibnbd/Makefile diff --git a/drivers/block/Kconfig b/drivers/block/Kconfig index 20bb4bfa4be6..9904c030d488 100644 --- a/drivers/block/Kconfig +++ b/drivers/block/Kconfig @@ -468,4 +468,6 @@ config BLK_DEV_RSXX To compile this driver as a module, choose M here: the module will be called rsxx. +source "drivers/block/ibnbd/Kconfig" + endif # BLK_DEV diff --git a/drivers/block/Makefile b/drivers/block/Makefile index a53cc1e3a2d3..bde0b015e07a 100644 --- a/drivers/block/Makefile +++ b/drivers/block/Makefile @@ -36,6 +36,7 @@ obj-$(CONFIG_BLK_DEV_PCIESSD_MTIP32XX) += mtip32xx/ obj-$(CONFIG_BLK_DEV_RSXX) += rsxx/ obj-$(CONFIG_ZRAM) += zram/ +obj-$(CONFIG_BLK_DEV_IBNBD) += ibnbd/ obj-$(CONFIG_BLK_DEV_NULL_BLK) += null_blk.o null_blk-objs := null_blk_main.o diff --git a/drivers/block/ibnbd/Kconfig b/drivers/block/ibnbd/Kconfig new file mode 100644 index 000000000000..936a91c8392e --- /dev/null +++ b/drivers/block/ibnbd/Kconfig @@ -0,0 +1,24 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +config BLK_DEV_IBNBD + bool + +config BLK_DEV_IBNBD_CLIENT + tristate "Network block device driver on top of IBTRS transport" + depends on INFINIBAND_IBTRS_CLIENT + select BLK_DEV_IBNBD + help + IBNBD client allows for mapping of a remote block devices over + IBTRS protocol from a target system where IBNBD server is running. + + If unsure, say N. + +config BLK_DEV_IBNBD_SERVER + tristate "Network block device over RDMA Infiniband server support" + depends on INFINIBAND_IBTRS_SERVER + select BLK_DEV_IBNBD + help + IBNBD server allows for exporting local block devices to a remote client + over IBTRS protocol. + + If unsure, say N. diff --git a/drivers/block/ibnbd/Makefile b/drivers/block/ibnbd/Makefile new file mode 100644 index 000000000000..4eb817a16ed2 --- /dev/null +++ b/drivers/block/ibnbd/Makefile @@ -0,0 +1,13 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +ccflags-y := -Idrivers/infiniband/ulp/ibtrs + +ibnbd-client-y := ibnbd-clt.o \ + ibnbd-clt-sysfs.o + +ibnbd-server-y := ibnbd-srv.o \ + ibnbd-srv-dev.o \ + ibnbd-srv-sysfs.o + +obj-$(CONFIG_BLK_DEV_IBNBD_CLIENT) += ibnbd-client.o +obj-$(CONFIG_BLK_DEV_IBNBD_SERVER) += ibnbd-server.o -- 2.17.1