On Wed, Sep 06, 2023 at 04:16:35PM +0800, Zhu Lingshan wrote:
> This commit specifies the constraints of the virtqueue state,
> and the actions should be taken by the device when SUSPEND
> and DRIVER_OK is set
>
> Signed-off-by: Zhu Lingshan <[email protected]>
> Signed-off-by: Jason Wang <[email protected]>
> Signed-off-by: Eugenio Pérez <[email protected]>
> ---
> content.tex | 19 +++++++++++++++++++
> 1 file changed, 19 insertions(+)
>
> diff --git a/content.tex b/content.tex
> index 0fab537..9d727ce 100644
> --- a/content.tex
> +++ b/content.tex
> @@ -594,6 +594,25 @@ \subsection{\field{Used State} Field}
> When VIRTIO_RING_F_PACKED is not negotiated, the 16-bit value of
> \field{used_idx}
> is always 0
>
> +\drivernormative{\subsection}{Virtqueue State}{Basic Facilities of a Virtio
> Device / Virtqueue State}
> +
> +If VIRTIO_F_QUEUE_STATE has been negotiated but VIRTIO_RING_F_PACKED not
> been negotiated,
> +the driver SHOULD NOT access \field{Used State} of any virtqueues, it SHOULD
> use the
> +used index in the used ring.
> +
> +\devicenormative{\subsection}{Virtqueue State}{Basic Facilities of a Virtio
> Device / Virtqueue State}
> +
> +If VIRTIO_F_QUEUE_STATE has been negotiated, the device SHOULD only accept
> setting
> +Virtqueue State of any virtqueues when DRIVER_OK is not set in \field{device
> status},
> +or both of DRIVER_OK and SUSPEND are set in \field{device status}.
> +Otherwise the device MUST ignore any writes to Virtqueue State of any
> virtqueues.
> +
> +If VIRTIO_F_QUEUE_STATE have been negotiated, when SUSPEND is set,
> +the device MUST record the Virtqueue State of every enabled virtqueue
> +in \field{Available State} and \field{Used State} respectively,
record how?
> +and correspondingly restore the Virtqueue State of every enabled virtqueue
> +from \field{Available State} and \field{Used State} when DRIVER_OK is set.
when is that?
> +
> \input{admin.tex}
>
> \chapter{General Initialization And Device Operation}\label{sec:General
> Initialization And Device Operation}
> --
> 2.35.3
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]