From: "Michael S. Tsirkin" <mst@redhat.com>
To: Eli Cohen <eli@mellanox.com>
Cc: shahafs@mellanox.com, parav@mellanox.com,
linux-kernel@vger.kernel.org,
virtualization@lists.linux-foundation.org, saeedm@mellanox.com
Subject: Re: [PATCH V3 vhost next 00/10] VDPA support for Mellanox ConnectX devices
Date: Mon, 3 Aug 2020 16:51:27 -0400 [thread overview]
Message-ID: <20200803164756-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20200728060539.4163-1-eli@mellanox.com>
On Tue, Jul 28, 2020 at 09:05:29AM +0300, Eli Cohen wrote:
> Hi Michael,
> please note that this series depends on mlx5 core device driver patches
> in mlx5-next branch in
> git://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux.git.
> git pull git://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux.git mlx5-next
>
> They also depend Jason Wang's patches submitted a couple of weeks ago.
>
> vdpa_sim: use the batching API
> vhost-vdpa: support batch updating
Hmm this makes merging them messy. I can ack merging them through
the mellanox tree, but
conflicts between Jason's patches and what's in my tree also exist.
How big is the dependency? Can I pick it up with your ack?
Also, mips build failures need to be dealt with.
>
>
> The following series of patches provide VDPA support for Mellanox
> devices. The supported devices are ConnectX6 DX and newer.
>
> Currently, only a network driver is implemented; future patches will
> introduce a block device driver. iperf performance on a single queue is
> around 12 Gbps. Future patches will introduce multi queue support.
>
> The files are organized in such a way that code that can be used by
> different VDPA implementations will be placed in a common are resides in
> drivers/vdpa/mlx5/core.
>
> Only virtual functions are currently supported. Also, certain firmware
> capabilities must be set to enable the driver. Physical functions (PFs)
> are skipped by the driver.
>
> To make use of the VDPA net driver, one must load mlx5_vdpa. In such
> case, VFs will be operated by the VDPA driver. Although one can see a
> regular instance of a network driver on the VF, the VDPA driver takes
> precedence over the NIC driver, steering-wize.
>
> Currently, the device/interface infrastructure in mlx5_core is used to
> probe drivers. Future patches will introduce virtbus as a means to
> register devices and drivers and VDPA will be adapted to it.
>
> The mlx5 mode of operation required to support VDPA is switchdev mode.
> Once can use Linux or OVS bridge to take care of layer 2 switching.
>
> In order to provide virtio networking to a guest, an updated version of
> qemu is required. This version has been tested by the following quemu
> version:
>
> url: https://github.com/jasowang/qemu.git
> branch: vdpa
> Commit ID: 6f4e59b807db
>
>
> V2->V3
> Fix makefile to use include path relative to the root of the kernel
>
> Eli Cohen (7):
> net/vdpa: Use struct for set/get vq state
> vhost: Fix documentation
> vdpa: Modify get_vq_state() to return error code
> vdpa/mlx5: Add hardware descriptive header file
> vdpa/mlx5: Add support library for mlx5 VDPA implementation
> vdpa/mlx5: Add shared memory registration code
> vdpa/mlx5: Add VDPA driver for supported mlx5 devices
>
> Jason Wang (2):
> vhost-vdpa: support batch updating
> vdpa_sim: use the batching API
>
> Max Gurtovoy (1):
> vdpa: remove hard coded virtq num
>
> drivers/vdpa/Kconfig | 18 +
> drivers/vdpa/Makefile | 1 +
> drivers/vdpa/ifcvf/ifcvf_base.c | 4 +-
> drivers/vdpa/ifcvf/ifcvf_base.h | 4 +-
> drivers/vdpa/ifcvf/ifcvf_main.c | 13 +-
> drivers/vdpa/mlx5/Makefile | 4 +
> drivers/vdpa/mlx5/core/mlx5_vdpa.h | 91 ++
> drivers/vdpa/mlx5/core/mlx5_vdpa_ifc.h | 168 ++
> drivers/vdpa/mlx5/core/mr.c | 473 ++++++
> drivers/vdpa/mlx5/core/resources.c | 284 ++++
> drivers/vdpa/mlx5/net/main.c | 76 +
> drivers/vdpa/mlx5/net/mlx5_vnet.c | 1950 ++++++++++++++++++++++++
> drivers/vdpa/mlx5/net/mlx5_vnet.h | 24 +
> drivers/vdpa/vdpa.c | 3 +
> drivers/vdpa/vdpa_sim/vdpa_sim.c | 35 +-
> drivers/vhost/iotlb.c | 4 +-
> drivers/vhost/vdpa.c | 46 +-
> include/linux/vdpa.h | 24 +-
> include/uapi/linux/vhost_types.h | 2 +
> 19 files changed, 3165 insertions(+), 59 deletions(-)
> create mode 100644 drivers/vdpa/mlx5/Makefile
> create mode 100644 drivers/vdpa/mlx5/core/mlx5_vdpa.h
> create mode 100644 drivers/vdpa/mlx5/core/mlx5_vdpa_ifc.h
> create mode 100644 drivers/vdpa/mlx5/core/mr.c
> create mode 100644 drivers/vdpa/mlx5/core/resources.c
> create mode 100644 drivers/vdpa/mlx5/net/main.c
> create mode 100644 drivers/vdpa/mlx5/net/mlx5_vnet.c
> create mode 100644 drivers/vdpa/mlx5/net/mlx5_vnet.h
>
> --
> 2.26.0
_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization
WARNING: multiple messages have this Message-ID (diff)
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Eli Cohen <eli@mellanox.com>
Cc: jasowang@redhat.com, virtualization@lists.linux-foundation.org,
linux-kernel@vger.kernel.org, shahafs@mellanox.com,
saeedm@mellanox.com, parav@mellanox.com
Subject: Re: [PATCH V3 vhost next 00/10] VDPA support for Mellanox ConnectX devices
Date: Mon, 3 Aug 2020 16:51:27 -0400 [thread overview]
Message-ID: <20200803164756-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <20200728060539.4163-1-eli@mellanox.com>
On Tue, Jul 28, 2020 at 09:05:29AM +0300, Eli Cohen wrote:
> Hi Michael,
> please note that this series depends on mlx5 core device driver patches
> in mlx5-next branch in
> git://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux.git.
> git pull git://git.kernel.org/pub/scm/linux/kernel/git/mellanox/linux.git mlx5-next
>
> They also depend Jason Wang's patches submitted a couple of weeks ago.
>
> vdpa_sim: use the batching API
> vhost-vdpa: support batch updating
Hmm this makes merging them messy. I can ack merging them through
the mellanox tree, but
conflicts between Jason's patches and what's in my tree also exist.
How big is the dependency? Can I pick it up with your ack?
Also, mips build failures need to be dealt with.
>
>
> The following series of patches provide VDPA support for Mellanox
> devices. The supported devices are ConnectX6 DX and newer.
>
> Currently, only a network driver is implemented; future patches will
> introduce a block device driver. iperf performance on a single queue is
> around 12 Gbps. Future patches will introduce multi queue support.
>
> The files are organized in such a way that code that can be used by
> different VDPA implementations will be placed in a common are resides in
> drivers/vdpa/mlx5/core.
>
> Only virtual functions are currently supported. Also, certain firmware
> capabilities must be set to enable the driver. Physical functions (PFs)
> are skipped by the driver.
>
> To make use of the VDPA net driver, one must load mlx5_vdpa. In such
> case, VFs will be operated by the VDPA driver. Although one can see a
> regular instance of a network driver on the VF, the VDPA driver takes
> precedence over the NIC driver, steering-wize.
>
> Currently, the device/interface infrastructure in mlx5_core is used to
> probe drivers. Future patches will introduce virtbus as a means to
> register devices and drivers and VDPA will be adapted to it.
>
> The mlx5 mode of operation required to support VDPA is switchdev mode.
> Once can use Linux or OVS bridge to take care of layer 2 switching.
>
> In order to provide virtio networking to a guest, an updated version of
> qemu is required. This version has been tested by the following quemu
> version:
>
> url: https://github.com/jasowang/qemu.git
> branch: vdpa
> Commit ID: 6f4e59b807db
>
>
> V2->V3
> Fix makefile to use include path relative to the root of the kernel
>
> Eli Cohen (7):
> net/vdpa: Use struct for set/get vq state
> vhost: Fix documentation
> vdpa: Modify get_vq_state() to return error code
> vdpa/mlx5: Add hardware descriptive header file
> vdpa/mlx5: Add support library for mlx5 VDPA implementation
> vdpa/mlx5: Add shared memory registration code
> vdpa/mlx5: Add VDPA driver for supported mlx5 devices
>
> Jason Wang (2):
> vhost-vdpa: support batch updating
> vdpa_sim: use the batching API
>
> Max Gurtovoy (1):
> vdpa: remove hard coded virtq num
>
> drivers/vdpa/Kconfig | 18 +
> drivers/vdpa/Makefile | 1 +
> drivers/vdpa/ifcvf/ifcvf_base.c | 4 +-
> drivers/vdpa/ifcvf/ifcvf_base.h | 4 +-
> drivers/vdpa/ifcvf/ifcvf_main.c | 13 +-
> drivers/vdpa/mlx5/Makefile | 4 +
> drivers/vdpa/mlx5/core/mlx5_vdpa.h | 91 ++
> drivers/vdpa/mlx5/core/mlx5_vdpa_ifc.h | 168 ++
> drivers/vdpa/mlx5/core/mr.c | 473 ++++++
> drivers/vdpa/mlx5/core/resources.c | 284 ++++
> drivers/vdpa/mlx5/net/main.c | 76 +
> drivers/vdpa/mlx5/net/mlx5_vnet.c | 1950 ++++++++++++++++++++++++
> drivers/vdpa/mlx5/net/mlx5_vnet.h | 24 +
> drivers/vdpa/vdpa.c | 3 +
> drivers/vdpa/vdpa_sim/vdpa_sim.c | 35 +-
> drivers/vhost/iotlb.c | 4 +-
> drivers/vhost/vdpa.c | 46 +-
> include/linux/vdpa.h | 24 +-
> include/uapi/linux/vhost_types.h | 2 +
> 19 files changed, 3165 insertions(+), 59 deletions(-)
> create mode 100644 drivers/vdpa/mlx5/Makefile
> create mode 100644 drivers/vdpa/mlx5/core/mlx5_vdpa.h
> create mode 100644 drivers/vdpa/mlx5/core/mlx5_vdpa_ifc.h
> create mode 100644 drivers/vdpa/mlx5/core/mr.c
> create mode 100644 drivers/vdpa/mlx5/core/resources.c
> create mode 100644 drivers/vdpa/mlx5/net/main.c
> create mode 100644 drivers/vdpa/mlx5/net/mlx5_vnet.c
> create mode 100644 drivers/vdpa/mlx5/net/mlx5_vnet.h
>
> --
> 2.26.0
next prev parent reply other threads:[~2020-08-03 20:51 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-28 6:05 [PATCH V3 vhost next 00/10] VDPA support for Mellanox ConnectX devices Eli Cohen
2020-07-28 6:05 ` [PATCH V3 vhost next 01/10] vhost-vdpa: support batch updating Eli Cohen
2020-07-28 6:05 ` [PATCH V3 vhost next 02/10] vdpa_sim: use the batching API Eli Cohen
2020-07-28 6:05 ` [PATCH V3 vhost next 03/10] vdpa: remove hard coded virtq num Eli Cohen
2020-07-28 6:05 ` [PATCH V3 vhost next 04/10] net/vdpa: Use struct for set/get vq state Eli Cohen
2020-07-28 6:05 ` [PATCH V3 vhost next 05/10] vhost: Fix documentation Eli Cohen
2020-07-28 6:05 ` [PATCH V3 vhost next 06/10] vdpa: Modify get_vq_state() to return error code Eli Cohen
2020-07-28 6:05 ` [PATCH V3 vhost next 07/10] vdpa/mlx5: Add hardware descriptive header file Eli Cohen
2020-07-28 6:05 ` [PATCH V3 vhost next 08/10] vdpa/mlx5: Add support library for mlx5 VDPA implementation Eli Cohen
2020-07-28 6:05 ` [PATCH V3 vhost next 09/10] vdpa/mlx5: Add shared memory registration code Eli Cohen
2020-07-28 6:05 ` [PATCH V3 vhost next 10/10] vdpa/mlx5: Add VDPA driver for supported mlx5 devices Eli Cohen
2020-07-28 13:43 ` kernel test robot
2020-07-28 13:43 ` kernel test robot
2020-08-04 11:54 ` Eli Cohen
2020-08-04 11:54 ` Eli Cohen
2020-08-04 12:22 ` Michael S. Tsirkin
2020-08-04 12:22 ` Michael S. Tsirkin
2020-08-04 12:22 ` Michael S. Tsirkin
2020-07-28 6:18 ` [PATCH V3 vhost next 00/10] VDPA support for Mellanox ConnectX devices Jason Wang
2020-07-28 6:32 ` Eli Cohen
2020-07-28 6:40 ` Jason Wang
2020-07-28 6:53 ` Jason Wang
2020-07-28 6:57 ` Eli Cohen
2020-07-29 5:54 ` Eli Cohen
2020-08-03 20:34 ` Michael S. Tsirkin
2020-08-03 20:34 ` Michael S. Tsirkin
2020-08-04 5:33 ` Eli Cohen
2020-08-03 20:51 ` Michael S. Tsirkin [this message]
2020-08-03 20:51 ` Michael S. Tsirkin
2020-08-04 5:34 ` Eli Cohen
2020-08-04 9:39 ` Michael S. Tsirkin
2020-08-04 9:39 ` Michael S. Tsirkin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200803164756-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=eli@mellanox.com \
--cc=linux-kernel@vger.kernel.org \
--cc=parav@mellanox.com \
--cc=saeedm@mellanox.com \
--cc=shahafs@mellanox.com \
--cc=virtualization@lists.linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.