RE: [PATCH 1/1] Drivers: infiniband: hw: vmbus-nd: NetworkDirect driver for Linux

From: KY Srinivasan
Date: Wed Jul 27 2016 - 18:33:04 EST




> -----Original Message-----
> From: Leon Romanovsky [mailto:leon@xxxxxxxxxx]
> Sent: Tuesday, July 26, 2016 9:25 PM
> To: KY Srinivasan <kys@xxxxxxxxxxxxx>
> Cc: gregkh@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> devel@xxxxxxxxxxxxxxxxxxxxxx; linux-rdma@xxxxxxxxxxxxxxx;
> yishaih@xxxxxxxxxxxx; sean.hefty@xxxxxxxxx; dledford@xxxxxxxxxx;
> olaf@xxxxxxxxx; apw@xxxxxxxxxxxxx; vkuznets@xxxxxxxxxx;
> jasowang@xxxxxxxxxx; leann.ogasawara@xxxxxxxxxxxxx; Long Li
> <longli@xxxxxxxxxxxxx>
> Subject: Re: [PATCH 1/1] Drivers: infiniband: hw: vmbus-nd: NetworkDirect
> driver for Linux
>
> On Tue, Jul 26, 2016 at 07:05:37PM -0700, kys@xxxxxxxxxxxxxxxxxxxxxx
> wrote:
> > From: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
> >
> > This driver is a bridge driver that surfaces a Mellanox device in the Linux
> guest and plugs into
> > the "NetworkDirect" RDMA infrastructure on the Windows host. Only a subset
> of the ibverbs are
> > implemented (this decision is based on the verbs supported by the Windows
> host).
> > The control path is implemented over the vmbus using the NetworkDirect
> protocol for
> > virtualized environments. The data path bypasses the guest and host kernel
> and the NIC is able to RDMA
> > into guest addresses.
> >
> > Signed-off-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
> > ---
> > drivers/infiniband/Kconfig | 1 +
> > drivers/infiniband/hw/Makefile | 1 +
> > drivers/infiniband/hw/vmbus-nd/Kconfig | 5 +
> > drivers/infiniband/hw/vmbus-nd/Makefile | 3 +
> > drivers/infiniband/hw/vmbus-nd/hvnd_addr.c | 292 +++
> > drivers/infiniband/hw/vmbus-nd/mx_abi.h | 232 ++
> > drivers/infiniband/hw/vmbus-nd/provider.c | 2844
> ++++++++++++++++++++++++
> > drivers/infiniband/hw/vmbus-nd/vmbus_rdma.c | 3086
> +++++++++++++++++++++++++++
> > drivers/infiniband/hw/vmbus-nd/vmbus_rdma.h | 2205
> +++++++++++++++++++
> > 9 files changed, 8669 insertions(+), 0 deletions(-)
>
> If your final goal is to merge this driver into Linux kernel, so I will
> ask from you to do the following actions:

Yes, our final goal is to get the driver into the Linux Kernel.

>
> 1. Split this patch to smaller patches to allow review.

In the past I have submitted new drivers as a single patch and that is what I did here.
That said, I will try to breakup this driver on a per verb implementation basis. Hope that
is adequate for making the review easy.

> You can see as an example - latest submission of "Add Paravirtual RDMA
> Driver" [1].
> 2. Fix licenses, magic numbers, remove creepy comments and learn about
> MAINTAINERS file.
> 3. Use preferred for this susbsystem title format.

I will do that.

> 4. Find the relevant mailing list and maintainer for this submission and
> don't add unrelated people.

I looked at the MAINTAINERS file and selected the addresses that I thought I should send to.
Sean Hefty (from Intel) helped me during the initial implementation and so I included him.
In my next submission, I will do as you are recommending here.

Leon,

Thank you for your comments and I will address them all in my next submission.

Regards,

K. Y
>
> Thanks.
>
> [1] http://marc.info/?l=linux-rdma&m=146835226218818&w=2
>
> > create mode 100644 drivers/infiniband/hw/vmbus-nd/Kconfig
> > create mode 100644 drivers/infiniband/hw/vmbus-nd/Makefile
> > create mode 100644 drivers/infiniband/hw/vmbus-nd/hvnd_addr.c
> > create mode 100644 drivers/infiniband/hw/vmbus-nd/mx_abi.h
> > create mode 100644 drivers/infiniband/hw/vmbus-nd/provider.c
> > create mode 100644 drivers/infiniband/hw/vmbus-nd/vmbus_rdma.c
> > create mode 100644 drivers/infiniband/hw/vmbus-nd/vmbus_rdma.h