DPDK patches and discussions
 help / color / mirror / Atom feed
From: Maxime Coquelin <maxime.coquelin@redhat.com>
To: xiaolong.ye@intel.com, shahafs@mellanox.com, matan@mellanox.com,
	amorenoz@redhat.com, xiao.w.wang@intel.com,
	viacheslavo@mellanox.com, dev@dpdk.org
Cc: jasowang@redhat.com, lulu@redhat.com,
	Maxime Coquelin <maxime.coquelin@redhat.com>
Subject: [dpdk-dev] [PATCH (v20.08) 0/9] vhost: improve Vhost/vDPA device init
Date: Thu, 14 May 2020 10:02:09 +0200	[thread overview]
Message-ID: <20200514080218.1435344-1-maxime.coquelin@redhat.com> (raw)

The goal of this series is to make the Vhost/vDPA
device init more robust by adding support to a new
protocol feature.

VHOST_USER_SET_STATUS is received by the backend
when the driver updates the Virtio device status
register.

For now this series only deal with the DRIVER_OK
bit, which indicates that the driver is done with
the device initialization.

For example, such information helps the Vhost
backend to know when it can call de dev_conf vDPA
callback. It avoids doing an hazardous workaround
which only work with Qemu and not Virtio-user PMD.

Before adding support for this new request, some
clean-ups and refactoring are done as preliminary
steps to make the code more easily readable.

Some vDPA APIs are also made mandatory, and the
IFC driver modified to add support for the
.set_vring_state() callback. I think this one
should be mandatory as if the frontent requests
for one queue to be disabled, I think the vDPA
device should no more be processing it.

Note that the VHOST_USER_PROTOCOL_F_STATUS
protocol feature requires frontend support.
For Qemu, it has been posted for reviews and
can be found here:
https://patchwork.ozlabs.org/project/qemu-devel/patch/20200514073332.1434576-1-maxime.coquelin@redhat.com/

For Virtio-user PMD, it is being developped
and will be posted soon.

Maxime Coquelin (9):
  vhost: fix virtio ready flag check
  vhost: refactor Virtio ready check
  vdpa/ifc: add support to vDPA queue enable
  vhost: make some vDPA callbacks mandatory
  vhost: check vDPA configuration succeed
  vhost: add support for virtio status
  vdpa/ifc: enable status protocol feature
  vdpa/mlx5: enable status protocol feature
  vhost: only use vDPA config workaround if needed

 drivers/vdpa/ifc/base/ifcvf.c |   9 +++
 drivers/vdpa/ifc/base/ifcvf.h |   4 ++
 drivers/vdpa/ifc/ifcvf_vdpa.c |  26 ++++++++-
 drivers/vdpa/mlx5/mlx5_vdpa.c |   4 +-
 lib/librte_vhost/rte_vdpa.h   |  14 +++--
 lib/librte_vhost/rte_vhost.h  |   4 ++
 lib/librte_vhost/socket.c     |   6 +-
 lib/librte_vhost/vdpa.c       |  10 ++++
 lib/librte_vhost/vhost.c      |   3 +-
 lib/librte_vhost/vhost.h      |   9 +++
 lib/librte_vhost/vhost_user.c | 103 +++++++++++++++++++++++++++-------
 lib/librte_vhost/vhost_user.h |   6 +-
 12 files changed, 162 insertions(+), 36 deletions(-)

-- 
2.25.4


             reply	other threads:[~2020-05-14  8:02 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-14  8:02 Maxime Coquelin [this message]
2020-05-14  8:02 ` [dpdk-dev] [PATCH 1/9] vhost: fix virtio ready flag check Maxime Coquelin
2020-05-14  8:02 ` [dpdk-dev] [PATCH 2/9] vhost: refactor Virtio ready check Maxime Coquelin
2020-05-14  8:02 ` [dpdk-dev] [PATCH 3/9] vdpa/ifc: add support to vDPA queue enable Maxime Coquelin
2020-05-15  8:45   ` Ye Xiaolong
2020-05-15  9:09   ` Jason Wang
2020-05-15  9:42     ` Wang, Xiao W
2020-05-15 10:06       ` Jason Wang
2020-05-15 10:08       ` Jason Wang
2020-05-18  3:09         ` Wang, Xiao W
2020-05-18  3:17           ` Jason Wang
2020-05-14  8:02 ` [dpdk-dev] [PATCH 4/9] vhost: make some vDPA callbacks mandatory Maxime Coquelin
2020-05-14  8:02 ` [dpdk-dev] [PATCH 5/9] vhost: check vDPA configuration succeed Maxime Coquelin
2020-05-14  8:02 ` [dpdk-dev] [PATCH 6/9] vhost: add support for virtio status Maxime Coquelin
2020-06-11  2:45   ` Xia, Chenbo
2020-06-16  4:29   ` Xia, Chenbo
2020-06-22 10:18     ` Adrian Moreno
2020-06-22 11:00       ` Xia, Chenbo
2020-05-14  8:02 ` [dpdk-dev] [PATCH 7/9] vdpa/ifc: enable status protocol feature Maxime Coquelin
2020-05-14  8:02 ` [dpdk-dev] [PATCH 8/9] vdpa/mlx5: " Maxime Coquelin
2020-05-14  8:02 ` [dpdk-dev] [PATCH 9/9] vhost: only use vDPA config workaround if needed Maxime Coquelin
2020-06-07 10:38   ` Matan Azrad
2020-06-08  8:34     ` Maxime Coquelin
2020-06-08  9:19       ` Matan Azrad
2020-06-09  9:04         ` Maxime Coquelin
2020-06-09 11:09           ` Matan Azrad
2020-06-09 11:26             ` Maxime Coquelin
2020-06-09 17:23             ` Maxime Coquelin
2020-06-14  6:08               ` Matan Azrad
2020-06-17  9:39                 ` Maxime Coquelin
2020-06-17 11:04                   ` Matan Azrad
2020-06-17 12:29                     ` Maxime Coquelin
2020-06-18  6:39                       ` Matan Azrad
2020-06-18  7:30                         ` Maxime Coquelin
2020-06-23 10:42                           ` Wang, Xiao W

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=20200514080218.1435344-1-maxime.coquelin@redhat.com \
    --to=maxime.coquelin@redhat.com \
    --cc=amorenoz@redhat.com \
    --cc=dev@dpdk.org \
    --cc=jasowang@redhat.com \
    --cc=lulu@redhat.com \
    --cc=matan@mellanox.com \
    --cc=shahafs@mellanox.com \
    --cc=viacheslavo@mellanox.com \
    --cc=xiao.w.wang@intel.com \
    --cc=xiaolong.ye@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).