From: Maxime Coquelin <maxime.coquelin@redhat.com>
To: tiwei.bie@intel.com, zhihong.wang@intel.com,
jfreimann@redhat.com, dev@dpdk.org
Cc: mst@redhat.com, jasowang@redhat.com, wexu@redhat.com,
Maxime Coquelin <maxime.coquelin@redhat.com>
Subject: [dpdk-dev] [PATCH v7 00/15] Vhost: add support to packed ring layout
Date: Wed, 4 Jul 2018 23:54:23 +0200 [thread overview]
Message-ID: <20180704215438.5579-1-maxime.coquelin@redhat.com> (raw)
This series is a handover from Jen's "[PATCH v4 00/20]
implement packed virtqueues", which only implements the
vhost side. Virtio PMD implementation will follow in a
next series.
The series applies on top of previous reworks I posted
during this cycle that merges mergeable and non-mergeable
receive paths, and refactors transmit path to re-use
vector buffers.
I haven't run performance tests for now as the Virtio PMD
side isn't ready.
The series has been tested with Tiwei's series implementing
packed ring support to Kernel's virtio-net driver, and
with Wei series implementing the Qemu side.
To test it, I have used testpmd on host side with a vhost
vdev and a tap vdev forwarding to each other. Transferts
of big random files have been done in both ways with
integrity verified.
Tests have been run with Rx mrg ON/OFF and events suppression
ON/OFF.
Tests have also been run with legacy spli ring layout to
ensure no regression have been introduced.
Changes since v6:
=================
- Various style cleanups (Tiwei, Jason)
- Simplify event based notification (Jason)
- Build support with future kernels (Tiwei)
- Prevent buffer vectors overflow in map_one_desc (Tiwei)
Changes since v5:
=================
- Remove duplicated VHOST_USER_F_PROTOCOL_FEATURES definition (Tiwei)
- Fix vq_is_ready (Maxime)
- Fix local used index overflow in flush_shadow_used_ring_packed (Tiwei)
- Make desc_is_avail() a bool (Tiwei)
- Improve desc_is_avail() logic (Tiwei)
- Remove split rings addr NULL assignment in the right patch (Tiwei)
- Make buffer id a uint16_t (Tiwei)
Jens Freimann (2):
vhost: add virtio packed virtqueue defines
vhost: add helpers for packed virtqueues
Maxime Coquelin (12):
vhost: clear shadow used table index at flush time
vhost: make indirect desc table copy desc type agnostic
vhost: clear batch copy index at copy time
vhost: extract split ring handling from Rx and Tx functions
vhost: append shadow used ring function names with split
vhost: add shadow used ring support for packed rings
vhost: create descriptor mapping function
vhost: add vector filling support for packed ring
vhost: add Rx support for packed ring
vhost: add Tx support for packed ring
vhost: add notification for packed ring
vhost: advertize packed ring layout support
Yuanhan Liu (1):
vhost: vring address setup for packed queues
lib/librte_vhost/vhost.c | 114 ++++++-
lib/librte_vhost/vhost.h | 120 ++++++-
lib/librte_vhost/vhost_user.c | 127 +++++--
lib/librte_vhost/virtio_net.c | 776 +++++++++++++++++++++++++++++++++---------
4 files changed, 928 insertions(+), 209 deletions(-)
--
2.14.4
next reply other threads:[~2018-07-04 21:54 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-07-04 21:54 Maxime Coquelin [this message]
2018-07-04 21:54 ` [dpdk-dev] [PATCH v7 01/15] vhost: add virtio packed virtqueue defines Maxime Coquelin
2018-07-04 21:54 ` [dpdk-dev] [PATCH v7 02/15] vhost: add helpers for packed virtqueues Maxime Coquelin
2018-07-04 21:54 ` [dpdk-dev] [PATCH v7 03/15] vhost: vring address setup for packed queues Maxime Coquelin
2018-07-04 21:54 ` [dpdk-dev] [PATCH v7 04/15] vhost: clear shadow used table index at flush time Maxime Coquelin
2018-07-04 21:54 ` [dpdk-dev] [PATCH v7 05/15] vhost: make indirect desc table copy desc type agnostic Maxime Coquelin
2018-07-04 21:54 ` [dpdk-dev] [PATCH v7 06/15] vhost: clear batch copy index at copy time Maxime Coquelin
2018-07-04 21:54 ` [dpdk-dev] [PATCH v7 07/15] vhost: extract split ring handling from Rx and Tx functions Maxime Coquelin
2018-07-04 21:54 ` [dpdk-dev] [PATCH v7 08/15] vhost: append shadow used ring function names with split Maxime Coquelin
2018-07-04 21:54 ` [dpdk-dev] [PATCH v7 09/15] vhost: add shadow used ring support for packed rings Maxime Coquelin
2018-07-05 7:15 ` Tiwei Bie
2018-07-05 12:49 ` Maxime Coquelin
2018-07-05 14:03 ` Tiwei Bie
2018-07-05 14:28 ` Maxime Coquelin
2018-07-05 14:36 ` Tiwei Bie
2018-07-04 21:54 ` [dpdk-dev] [PATCH v7 10/15] vhost: create descriptor mapping function Maxime Coquelin
2018-07-04 21:54 ` [dpdk-dev] [PATCH v7 11/15] vhost: add vector filling support for packed ring Maxime Coquelin
2018-07-04 21:54 ` [dpdk-dev] [PATCH v7 12/15] vhost: add Rx " Maxime Coquelin
2018-07-04 21:54 ` [dpdk-dev] [PATCH v7 13/15] vhost: add Tx " Maxime Coquelin
2018-07-04 21:54 ` [dpdk-dev] [PATCH v7 14/15] vhost: add notification " Maxime Coquelin
2018-07-05 5:12 ` Tiwei Bie
2018-07-05 7:20 ` Maxime Coquelin
2018-07-04 21:54 ` [dpdk-dev] [PATCH v7 15/15] vhost: advertize packed ring layout support Maxime Coquelin
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=20180704215438.5579-1-maxime.coquelin@redhat.com \
--to=maxime.coquelin@redhat.com \
--cc=dev@dpdk.org \
--cc=jasowang@redhat.com \
--cc=jfreimann@redhat.com \
--cc=mst@redhat.com \
--cc=tiwei.bie@intel.com \
--cc=wexu@redhat.com \
--cc=zhihong.wang@intel.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).