Message ID | 20200427141020.655-24-danil.kipnis@cloud.ionos.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 |
On Mon, Apr 27, 2020 at 04:10:18PM +0200, Danil Kipnis wrote: > From: Jack Wang <jinpu.wang@cloud.ionos.com> > > Add rnbd Makefile, Kconfig and also corresponding lines into upper > block layer files. > > 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> > drivers/block/Kconfig | 2 ++ > drivers/block/Makefile | 1 + > drivers/block/rnbd/Kconfig | 28 ++++++++++++++++++++++++++++ > drivers/block/rnbd/Makefile | 15 +++++++++++++++ > 4 files changed, 46 insertions(+) > create mode 100644 drivers/block/rnbd/Kconfig > create mode 100644 drivers/block/rnbd/Makefile > > diff --git a/drivers/block/Kconfig b/drivers/block/Kconfig > index 025b1b77b11a..084b9efcefca 100644 > +++ b/drivers/block/Kconfig > @@ -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 > diff --git a/drivers/block/Makefile b/drivers/block/Makefile > index 795facd8cf19..e1f63117ee94 100644 > +++ b/drivers/block/Makefile > @@ -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 > index 000000000000..4b6d3d816d1f > +++ b/drivers/block/rnbd/Kconfig > @@ -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 > index 000000000000..450a9e4974d7 > +++ b/drivers/block/rnbd/Makefile > @@ -0,0 +1,15 @@ > +# SPDX-License-Identifier: GPL-2.0-or-later > + > +ccflags-y := -Idrivers/infiniband/ulp/rtrs > + > +rnbd-client-y := rnbd-clt.o \ > + rnbd-common.o \ > + rnbd-clt-sysfs.o > + > +rnbd-server-y := rnbd-srv.o \ > + rnbd-common.o \ > + rnbd-srv-dev.o \ > + rnbd-srv-sysfs.o keep lists of things sorted Jason
On Wed, Apr 29, 2020 at 7:18 PM Jason Gunthorpe <jgg@ziepe.ca> wrote: > > On Mon, Apr 27, 2020 at 04:10:18PM +0200, Danil Kipnis wrote: > > From: Jack Wang <jinpu.wang@cloud.ionos.com> > > > > Add rnbd Makefile, Kconfig and also corresponding lines into upper > > block layer files. > > > > 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> > > drivers/block/Kconfig | 2 ++ > > drivers/block/Makefile | 1 + > > drivers/block/rnbd/Kconfig | 28 ++++++++++++++++++++++++++++ > > drivers/block/rnbd/Makefile | 15 +++++++++++++++ > > 4 files changed, 46 insertions(+) > > create mode 100644 drivers/block/rnbd/Kconfig > > create mode 100644 drivers/block/rnbd/Makefile > > > > diff --git a/drivers/block/Kconfig b/drivers/block/Kconfig > > index 025b1b77b11a..084b9efcefca 100644 > > +++ b/drivers/block/Kconfig > > @@ -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 > > diff --git a/drivers/block/Makefile b/drivers/block/Makefile > > index 795facd8cf19..e1f63117ee94 100644 > > +++ b/drivers/block/Makefile > > @@ -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 > > index 000000000000..4b6d3d816d1f > > +++ b/drivers/block/rnbd/Kconfig > > @@ -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 > > index 000000000000..450a9e4974d7 > > +++ b/drivers/block/rnbd/Makefile > > @@ -0,0 +1,15 @@ > > +# SPDX-License-Identifier: GPL-2.0-or-later > > + > > +ccflags-y := -Idrivers/infiniband/ulp/rtrs > > + > > +rnbd-client-y := rnbd-clt.o \ > > + rnbd-common.o \ > > + rnbd-clt-sysfs.o > > + > > +rnbd-server-y := rnbd-srv.o \ > > + rnbd-common.o \ > > + rnbd-srv-dev.o \ > > + rnbd-srv-sysfs.o > > keep lists of things sorted > > Jason Will do, thanks
On Wed, Apr 29, 2020 at 7:18 PM Jason Gunthorpe <jgg@ziepe.ca> wrote: > > On Mon, Apr 27, 2020 at 04:10:18PM +0200, Danil Kipnis wrote: > > +rnbd-client-y := rnbd-clt.o \ > > + rnbd-common.o \ > > + rnbd-clt-sysfs.o > > + > > +rnbd-server-y := rnbd-srv.o \ > > + rnbd-common.o \ > > + rnbd-srv-dev.o \ > > + rnbd-srv-sysfs.o > > keep lists of things sorted Hi Jason, I understand you mean to sort the order of object files here, right? Is that the reason the kbuild robot couldn't find the rtrs.h include file?
On Wed, Apr 29, 2020 at 5:01 PM kbuild test robot <lkp@intel.com> wrote: > > Hi Danil, > > I love your patch! Yet something to improve: > > [auto build test ERROR on block/for-next] > [also build test ERROR on driver-core/driver-core-testing rdma/for-next linus/master v5.7-rc3 next-20200428] > [if your patch is applied to the wrong git tree, please drop us a note to help > improve the system. BTW, we also suggest to use '--base' option to specify the > base tree in git format-patch, please see https://stackoverflow.com/a/37406982] > > url: https://github.com/0day-ci/linux/commits/Danil-Kipnis/RTRS-former-IBTRS-RDMA-Transport-Library-and-RNBD-former-IBNBD-RDMA-Network-Block-Device/20200428-080733 > base: https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-next > config: i386-allyesconfig (attached as .config) > compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0 > reproduce: > # save the attached .config to linux build tree > make ARCH=i386 > > If you fix the issue, kindly add following tag as appropriate > Reported-by: kbuild test robot <lkp@intel.com> > > All errors (new ones prefixed by >>): > > In file included from drivers/block/rnbd/rnbd-clt.c:19:0: > >> drivers/block/rnbd/rnbd-clt.h:19:10: fatal error: rtrs.h: No such file or directory > #include "rtrs.h" > ^~~~~~~~ > compilation terminated. > -- > In file included from drivers/block/rnbd/rnbd-srv.c:15:0: > >> drivers/block/rnbd/rnbd-srv.h:16:10: fatal error: rtrs.h: No such file or directory > #include "rtrs.h" > ^~~~~~~~ > compilation terminated. > > vim +19 drivers/block/rnbd/rnbd-clt.h > > 9e3ecd2f9c364e6 Jack Wang 2020-04-27 18 > 9e3ecd2f9c364e6 Jack Wang 2020-04-27 @19 #include "rtrs.h" > 9e3ecd2f9c364e6 Jack Wang 2020-04-27 20 #include "rnbd-proto.h" > 9e3ecd2f9c364e6 Jack Wang 2020-04-27 21 #include "rnbd-log.h" > 9e3ecd2f9c364e6 Jack Wang 2020-04-27 22 > > :::::: The code at line 19 was first introduced by commit > :::::: 9e3ecd2f9c364e67eaa3ad19424b0d7ad6daacaa block/rnbd: client: private header with client structs and functions > > :::::: TO: Jack Wang <jinpu.wang@cloud.ionos.com> > :::::: CC: 0day robot <lkp@intel.com> > > --- > 0-DAY CI Kernel Test Service, Intel Corporation > https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org Dear kbuild test robot, dear All, the mentioned branch with the attached config compiles without errors on my machine. Does anybody knows how to reproduce this include file not found error or why does it come up in the kbuild test compilation? Thank you, Danil.
On Thu, Apr 30, 2020 at 09:42:46AM +0200, Danil Kipnis wrote: > On Wed, Apr 29, 2020 at 7:18 PM Jason Gunthorpe <jgg@ziepe.ca> wrote: > > > > On Mon, Apr 27, 2020 at 04:10:18PM +0200, Danil Kipnis wrote: > > > +rnbd-client-y := rnbd-clt.o \ > > > + rnbd-common.o \ > > > + rnbd-clt-sysfs.o > > > + > > > +rnbd-server-y := rnbd-srv.o \ > > > + rnbd-common.o \ > > > + rnbd-srv-dev.o \ > > > + rnbd-srv-sysfs.o > > > > keep lists of things sorted > > Hi Jason, I understand you mean to sort the order of object files > here, right? Is that the reason the kbuild robot couldn't find the > rtrs.h include file? Probably not, you'll need to fix those kbuild things too Jason
On 4/30/2020 4:48 PM, Danil Kipnis wrote: > On Wed, Apr 29, 2020 at 5:01 PM kbuild test robot <lkp@intel.com> wrote: >> Hi Danil, >> >> I love your patch! Yet something to improve: >> >> [auto build test ERROR on block/for-next] >> [also build test ERROR on driver-core/driver-core-testing rdma/for-next linus/master v5.7-rc3 next-20200428] >> [if your patch is applied to the wrong git tree, please drop us a note to help >> improve the system. BTW, we also suggest to use '--base' option to specify the >> base tree in git format-patch, please see https://stackoverflow.com/a/37406982] >> >> url: https://github.com/0day-ci/linux/commits/Danil-Kipnis/RTRS-former-IBTRS-RDMA-Transport-Library-and-RNBD-former-IBNBD-RDMA-Network-Block-Device/20200428-080733 >> base: https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-next >> config: i386-allyesconfig (attached as .config) >> compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0 >> reproduce: >> # save the attached .config to linux build tree >> make ARCH=i386 >> >> If you fix the issue, kindly add following tag as appropriate >> Reported-by: kbuild test robot <lkp@intel.com> >> >> All errors (new ones prefixed by >>): >> >> In file included from drivers/block/rnbd/rnbd-clt.c:19:0: >>>> drivers/block/rnbd/rnbd-clt.h:19:10: fatal error: rtrs.h: No such file or directory >> #include "rtrs.h" >> ^~~~~~~~ >> compilation terminated. >> -- >> In file included from drivers/block/rnbd/rnbd-srv.c:15:0: >>>> drivers/block/rnbd/rnbd-srv.h:16:10: fatal error: rtrs.h: No such file or directory >> #include "rtrs.h" >> ^~~~~~~~ >> compilation terminated. >> >> vim +19 drivers/block/rnbd/rnbd-clt.h >> >> 9e3ecd2f9c364e6 Jack Wang 2020-04-27 18 >> 9e3ecd2f9c364e6 Jack Wang 2020-04-27 @19 #include "rtrs.h" >> 9e3ecd2f9c364e6 Jack Wang 2020-04-27 20 #include "rnbd-proto.h" >> 9e3ecd2f9c364e6 Jack Wang 2020-04-27 21 #include "rnbd-log.h" >> 9e3ecd2f9c364e6 Jack Wang 2020-04-27 22 >> >> :::::: The code at line 19 was first introduced by commit >> :::::: 9e3ecd2f9c364e67eaa3ad19424b0d7ad6daacaa block/rnbd: client: private header with client structs and functions >> >> :::::: TO: Jack Wang <jinpu.wang@cloud.ionos.com> >> :::::: CC: 0day robot <lkp@intel.com> >> >> --- >> 0-DAY CI Kernel Test Service, Intel Corporation >> https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org > > Dear kbuild test robot, dear All, > > the mentioned branch with the attached config compiles without errors > on my machine. Does anybody knows how to reproduce this include file > not found error or why does it come up in the kbuild test compilation? Hi Danil, The branch was generated by the bot, it may applied to a wrong base tree, could you take a look? url: https://github.com/0day-ci/linux/commits/Danil-Kipnis/RTRS-former-IBTRS-RDMA-Transport-Library-and-RNBD-former-IBNBD-RDMA-Network-Block-Device/20200428-080733 base: https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-next Best Regards, Rong Chen
On Fri, May 1, 2020 at 4:24 PM Chen, Rong A <rong.a.chen@intel.com> wrote: > > > > On 4/30/2020 4:48 PM, Danil Kipnis wrote: > > On Wed, Apr 29, 2020 at 5:01 PM kbuild test robot <lkp@intel.com> wrote: > >> Hi Danil, > >> > >> I love your patch! Yet something to improve: > >> > >> [auto build test ERROR on block/for-next] > >> [also build test ERROR on driver-core/driver-core-testing rdma/for-next linus/master v5.7-rc3 next-20200428] > >> [if your patch is applied to the wrong git tree, please drop us a note to help > >> improve the system. BTW, we also suggest to use '--base' option to specify the > >> base tree in git format-patch, please see https://stackoverflow.com/a/37406982] > >> > >> url: https://github.com/0day-ci/linux/commits/Danil-Kipnis/RTRS-former-IBTRS-RDMA-Transport-Library-and-RNBD-former-IBNBD-RDMA-Network-Block-Device/20200428-080733 > >> base: https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-next > >> config: i386-allyesconfig (attached as .config) > >> compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0 > >> reproduce: > >> # save the attached .config to linux build tree > >> make ARCH=i386 > >> > >> If you fix the issue, kindly add following tag as appropriate > >> Reported-by: kbuild test robot <lkp@intel.com> > >> > >> All errors (new ones prefixed by >>): > >> > >> In file included from drivers/block/rnbd/rnbd-clt.c:19:0: > >>>> drivers/block/rnbd/rnbd-clt.h:19:10: fatal error: rtrs.h: No such file or directory > >> #include "rtrs.h" > >> ^~~~~~~~ > >> compilation terminated. > >> -- > >> In file included from drivers/block/rnbd/rnbd-srv.c:15:0: > >>>> drivers/block/rnbd/rnbd-srv.h:16:10: fatal error: rtrs.h: No such file or directory > >> #include "rtrs.h" > >> ^~~~~~~~ > >> compilation terminated. > >> > >> vim +19 drivers/block/rnbd/rnbd-clt.h > >> > >> 9e3ecd2f9c364e6 Jack Wang 2020-04-27 18 > >> 9e3ecd2f9c364e6 Jack Wang 2020-04-27 @19 #include "rtrs.h" > >> 9e3ecd2f9c364e6 Jack Wang 2020-04-27 20 #include "rnbd-proto.h" > >> 9e3ecd2f9c364e6 Jack Wang 2020-04-27 21 #include "rnbd-log.h" > >> 9e3ecd2f9c364e6 Jack Wang 2020-04-27 22 > >> > >> :::::: The code at line 19 was first introduced by commit > >> :::::: 9e3ecd2f9c364e67eaa3ad19424b0d7ad6daacaa block/rnbd: client: private header with client structs and functions > >> > >> :::::: TO: Jack Wang <jinpu.wang@cloud.ionos.com> > >> :::::: CC: 0day robot <lkp@intel.com> > >> > >> --- > >> 0-DAY CI Kernel Test Service, Intel Corporation > >> https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org > > > > Dear kbuild test robot, dear All, > > > > the mentioned branch with the attached config compiles without errors > > on my machine. Does anybody knows how to reproduce this include file > > not found error or why does it come up in the kbuild test compilation? > > Hi Danil, > > The branch was generated by the bot, it may applied to a wrong base > tree, could you take a look? > > url: https://github.com/0day-ci/linux/commits/Danil-Kipnis/RTRS-former-IBTRS-RDMA-Transport-Library-and-RNBD-former-IBNBD-RDMA-Network-Block-Device/20200428-080733 > base: https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-next > Hi Rong Chen, thanks for the reply. I directly checked out the branch https://github.com/0day-ci/linux/commits/Danil-Kipnis/RTRS-former-IBTRS-RDMA-Transport-Library-and-RNBD-former-IBNBD-RDMA-Network-Block-Device/20200428-080733, extracted the config attached to the bot's mail (it seems to be "incomplete" make oldconfig still asks questions so I answered with defaults) and did make ARCH=i386 as the mail suggests. Everything compiled without errors... The only thing different is the compiler version on my machine, but I doubt this is the reason... Best, Danil. > > Best Regards, > Rong Chen
diff --git a/drivers/block/Kconfig b/drivers/block/Kconfig index 025b1b77b11a..084b9efcefca 100644 --- a/drivers/block/Kconfig +++ b/drivers/block/Kconfig @@ -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 diff --git a/drivers/block/Makefile b/drivers/block/Makefile index 795facd8cf19..e1f63117ee94 100644 --- a/drivers/block/Makefile +++ b/drivers/block/Makefile @@ -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 index 000000000000..4b6d3d816d1f --- /dev/null +++ b/drivers/block/rnbd/Kconfig @@ -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 index 000000000000..450a9e4974d7 --- /dev/null +++ b/drivers/block/rnbd/Makefile @@ -0,0 +1,15 @@ +# SPDX-License-Identifier: GPL-2.0-or-later + +ccflags-y := -Idrivers/infiniband/ulp/rtrs + +rnbd-client-y := rnbd-clt.o \ + rnbd-common.o \ + rnbd-clt-sysfs.o + +rnbd-server-y := rnbd-srv.o \ + rnbd-common.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