All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Stefan Hajnoczi <stefanha@redhat.com>
Cc: virtio-dev@lists.oasis-open.org, ndragazis@arrikto.com,
	fam.zheng@bytedance.com, liangma@liangbit.com,
	Usama Arif <usama.arif@bytedance.com>
Subject: [virtio-dev] Re: [PATCH v3 0/4] Introduce aux. notifications and virtio-vhost-user
Date: Fri, 28 Oct 2022 12:36:15 -0400	[thread overview]
Message-ID: <20221028123553-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <Y1riAdfUNARcIv79@fedora>

On Thu, Oct 27, 2022 at 03:54:41PM -0400, Stefan Hajnoczi wrote:
> On Fri, Oct 07, 2022 at 05:56:39PM +0100, Usama Arif wrote:
> > Hi,
> > 
> > This patch series introduces device and driver auxiliary notifications
> > as a new set of virtio device resources, as well as vhost-user device
> > backend that uses these resources.
> > 
> > Driver auxiliary notifications allow the device to send notifications
> > other than configuration changes and used buffer notifications to the
> > driver, these are optional and their meaning is **device-specific**.
> > 
> > Device auxiliary notifcations allow the driver to send notifcations
> > other than available buffer notifications to the device for example
> > through a device register, these are optional and their meaning is
> > **device-specific**.
> > 
> > These resources are used in the last patch by the virtio-vhost-user
> > device in order to send/receive notifications to/from the driver
> > regarding activity on the vhost-user virtqueues. By standardizing
> > these resources as standalone virtio device resources, other future
> > devices will be able to use them as well.
> 
> Hi Michael,
> Do you have time to review this? I have been too involved in
> virtio-vhost-user in the past to do a truly independent review and your
> VIRTIO + vhost expertise would be perfect here.
> 
> Thanks,
> Stefan


Plan to, just trying to merge a ton of stuff before qemu freeze.

> > 
> > The last patch introduces the vhost-user device backend which facilitates
> > vhost-user device emulation through vhost-user protocol exchanges and
> > access to shared memory. Software-defined networking, storage, and other
> > I/O appliances can provide services through this device.
> > 
> > This device is based on Wei Wang's vhost-pci work. The virtio-vhost-user
> > device differs from vhost-pci because it is a single virtio
> > device type that exposes the vhost-user protocol instead of a family of
> > new virtio device types, one for each vhost-user device type.
> > 
> > A HTML version with the changes is available at [1].
> > 
> > For more information about virtio-vhost-user, see [2].
> > 
> > These patches are based on the work initially done by Stefan Hajnoczi [2]
> > and continued by Nikos Dragazis [3], [4].
> > 
> > A working prototype implementing this spec can be reproduced using
> > instructions in [5] utilizing QEMU [6] and DPDK [7].
> > This is also based on the work initially done by Stefan
> > and continued later by Nikos. The prototype code uses the terms
> > "doorbell"/"device-specific notification" and "master"/"slave" instead of
> > "device auxiliary notification"/"driver auxiliary notification" and
> > "frontend"/"backend". This is based on older work, however, their
> > functionality is the same. If these virtio-spec changes get approved,
> > I will refractor the patches for QEMU/DPDK and send them for review
> > according to the final patches in the respective mailing list.
> > 
> > Thanks and looking forward to your response!
> > Usama
> > 
> > [1] https://uarif1.github.io/vvu/v3/virtio-v1.2-cs01
> > [2] https://wiki.qemu.org/Features/VirtioVhostUser
> > [3] https://ndragazis.github.io/dpdk-vhost-vvu-demo.html
> > [4] https://lists.oasis-open.org/archives/virtio-dev/202005/msg00132.html
> > [5] https://uarif1.github.io/vvu/dpdk-vvu-instructions
> > [6] https://github.com/uarif1/qemu/tree/vvu
> > [7] https://github.com/uarif1/dpdk/tree/vvu
> > ----------
> > v2->v3:
> > Mostly addressing comments made by Michael S. Tsirkin:
> > - Give a clearer relation between backend driver, backend device and frontend at
> >   beginning of the Vhost-user Device Backend section.
> > - change uuid to id.
> > - Add information about inflight memory.
> > 
> > v1->v2:
> > - Shortened device aux. notification section
> > - Make data width of device aux. notifications device specific and not
> >   limited to 2 bytes.
> > - Added information about the minimum number of MSIX vectors.
> > - Split virtio-mmio implementation of driver aux. notifications into 2
> >   registers, DeviceAuxNotificationIndex and DeviceAuxNotificationData.
> > - Made the shared memory section in virtio vhost-user clearer and added
> >   the shared memory would look like when
> >   VHOST_USER_PROTOCOL_F_CONFIGURE_MEM_SLOTS has been negotiated.
> > 
> > Usama Arif (4):
> >   content: Introduce driver/device auxiliary notifications
> >   content: Introduce driver/device aux. notification cfg type for PCI
> >   content: Introduce driver/device auxiliary notifications for MMIO
> >   vhost-user: add vhost-user device type
> > 
> >  conformance.tex       |  29 +++-
> >  content.tex           | 254 +++++++++++++++++++++++++++++-----
> >  introduction.tex      |   3 +
> >  virtio-vhost-user.tex | 309 ++++++++++++++++++++++++++++++++++++++++++
> >  4 files changed, 554 insertions(+), 41 deletions(-)
> >  create mode 100644 virtio-vhost-user.tex
> > 
> > -- 
> > 2.25.1
> > 



---------------------------------------------------------------------
To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org
For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org


      reply	other threads:[~2022-10-28 16:36 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-10-07 16:56 [virtio-dev] [PATCH v3 0/4] Introduce aux. notifications and virtio-vhost-user Usama Arif
2022-10-07 16:56 ` [virtio-dev] [PATCH v3 1/4] content: Introduce driver/device auxiliary notifications Usama Arif
2022-10-11  9:20   ` Cornelia Huck
2022-10-11 16:58     ` Usama Arif
2022-10-27 20:05   ` [virtio-dev] " Stefan Hajnoczi
2022-10-28 10:05     ` [virtio-dev] Re: [External] " Usama Arif
2022-10-07 16:56 ` [virtio-dev] [PATCH v3 2/4] content: Introduce driver/device aux. notification cfg type for PCI Usama Arif
2022-10-27 21:22   ` [virtio-dev] " Stefan Hajnoczi
2022-10-07 16:56 ` [virtio-dev] [PATCH v3 3/4] content: Introduce driver/device auxiliary notifications for MMIO Usama Arif
2022-10-27 21:27   ` [virtio-dev] " Stefan Hajnoczi
2022-10-31 14:22     ` [virtio-dev] Re: [External] " Usama Arif
2022-10-31 15:47       ` Michael S. Tsirkin
2022-10-31 17:26       ` Stefan Hajnoczi
2022-10-31 15:45     ` [virtio-dev] " Michael S. Tsirkin
2022-10-31 17:24       ` Stefan Hajnoczi
2022-10-31 19:33         ` Michael S. Tsirkin
2022-10-07 16:56 ` [virtio-dev] [PATCH v3 4/4] vhost-user: add vhost-user device type Usama Arif
2022-10-27 19:54 ` [virtio-dev] Re: [PATCH v3 0/4] Introduce aux. notifications and virtio-vhost-user Stefan Hajnoczi
2022-10-28 16:36   ` Michael S. Tsirkin [this message]

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=20221028123553-mutt-send-email-mst@kernel.org \
    --to=mst@redhat.com \
    --cc=fam.zheng@bytedance.com \
    --cc=liangma@liangbit.com \
    --cc=ndragazis@arrikto.com \
    --cc=stefanha@redhat.com \
    --cc=usama.arif@bytedance.com \
    --cc=virtio-dev@lists.oasis-open.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.