From: Stefan Hajnoczi <stefanha@redhat.com>
To: Usama Arif <usama.arif@bytedance.com>
Cc: virtio-dev@lists.oasis-open.org, mst@redhat.com,
ndragazis@arrikto.com, fam.zheng@bytedance.com,
liangma@liangbit.com
Subject: [virtio-dev] Re: [PATCH v3 1/4] content: Introduce driver/device auxiliary notifications
Date: Thu, 27 Oct 2022 16:05:30 -0400 [thread overview]
Message-ID: <Y1rkiivA9J0KXr3U@fedora> (raw)
In-Reply-To: <20221007165643.3920613-2-usama.arif@bytedance.com>
[-- Attachment #1: Type: text/plain, Size: 4605 bytes --]
On Fri, Oct 07, 2022 at 05:56:40PM +0100, Usama Arif wrote:
> 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 notifications allow the driver to send notifications
> other than available buffer notifications to the device for example
> through a device register, these are optional and their meaning is
> device-specific.
>
> These device-specific notifications are needed later when adding support
> for virtio-vhost-user device.
>
> Signed-off-by: Usama Arif <usama.arif@bytedance.com>
> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
> Signed-off-by: Nikos Dragazis <ndragazis@arrikto.com>
> ---
> content.tex | 35 ++++++++++++++++++++++-------------
> 1 file changed, 22 insertions(+), 13 deletions(-)
>
> diff --git a/content.tex b/content.tex
> index e863709..49f9f2a 100644
> --- a/content.tex
> +++ b/content.tex
> @@ -160,29 +160,38 @@ \subsection{Legacy Interface: A Note on Feature
> Specification text within these sections generally does not apply
> to non-transitional devices.
>
> -\section{Notifications}\label{sec:Basic Facilities of a Virtio Device
> -/ Notifications}
> +\section{Notifications}\label{sec:Basic Facilities of a Virtio Device / Notifications}
>
> The notion of sending a notification (driver to device or device
> to driver) plays an important role in this specification. The
> modus operandi of the notifications is transport specific.
>
> -There are three types of notifications:
> +There are five types of notifications:
> \begin{itemize}
> \item configuration change notification
> \item available buffer notification
> -\item used buffer notification.
> +\item used buffer notification
> +\item driver auxiliary notification
> +\item device auxiliary notification
> \end{itemize}
>
> -Configuration change notifications and used buffer notifications are sent
> -by the device, the recipient is the driver. A configuration change
> -notification indicates that the device configuration space has changed; a
> -used buffer notification indicates that a buffer may have been made used
> -on the virtqueue designated by the notification.
> -
> -Available buffer notifications are sent by the driver, the recipient is
> -the device. This type of notification indicates that a buffer may have
> -been made available on the virtqueue designated by the notification.
> +Configuration change notifications, used buffer notifications and
> +driver auxiliary notifications are sent by the device,
> +the recipient is the driver. A configuration change notification indicates
> +that the device configuration space has changed; a used buffer notification
> +indicates that a buffer may have been made used on the virtqueue designated
> +by the notification; 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.
The meaning of "optional" is confusing and I suggest dropping it.
Auxiliary notifications are not used by all device types. In that sense
they are "optional".
But a device types that do use them, like virtio-vhost-user, may require
them. You cannot implement a virtio-vhost-user device without auxiliary
notifications, so they are mandatory (not "optional") for that device
type.
Finally, it is also possible for a device type to define a feature bit
that enables auxiliary notifications. Drivers/devices that don't support
auxiliary notifications leave the feature bit cleared and still work
properly. In this case they are truly "optional".
"Optional" is confusing. Just saying "their meaning is device-specific"
is enough.
> +
> +Available buffer notifications and device auxiliary notifications
> +are sent by the driver, the recipient is the device. Available buffer
> +notifications indicate that a buffer may have been made available on the
> +virtqueue designated by the notification; device auxiliary
> +notifications allow the driver to send notifications other than available
> +buffer notifications to the device for example through a device register, these
> +are optional and their meaning is device-specific.
>
> The semantics, the transport-specific implementations, and other
> important aspects of the different notifications are specified in detail
> --
> 2.25.1
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
next prev parent reply other threads:[~2022-10-27 20:05 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 ` Stefan Hajnoczi [this message]
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
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=Y1rkiivA9J0KXr3U@fedora \
--to=stefanha@redhat.com \
--cc=fam.zheng@bytedance.com \
--cc=liangma@liangbit.com \
--cc=mst@redhat.com \
--cc=ndragazis@arrikto.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox