+
+If VIRTIO_F_QUEUE_STATE has been negotiaged but
VIRTIO_RING_F_PACKED not been negotiated,
typo
yes
+the driver MUST 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 but SUSPEND is not set in
\field{device status},
+the device MUST ignore any accesses against Virtqueue State of any
virtqueues.
Btw, do we need to clarify the behavior of ring reset after suspending?
I think once suspended, the device should ignore resetting a queue
+
+When VIRTIO_F_QUEUE_STATE has been negotiated but
VIRTIO_RING_F_PACKED is not,
+the device MUST ignore any accesses against \field{Used State}.
+
+If VIRTIO_F_QUEUE_STATE has been negotiaged, the device MUST reset
+the Virtqueue State of every virtqueue upon a reset.
Need to define the meaning of "reset" this is important for packed virtqueue.
I will remove this as Stefan suggested.
+
+If VIRTIO_F_QUEUE_STATE and VIRTIO_RING_F_PACKED have been
negotiaged, when SUSPEND is set,
+the device MUST record the Virtqueue State of every enabled virtqueue
+in \field{Available State} and \field{Used State} respectively,
+and correspondingly restore the Virtqueue State of every enabled virtqueue
+from \field{Avaiable State} and \field{Used State} when DRIVER_OK is set.
We can just let the device report those states in any case then we
don't need to care about those details, or did you see any blockers?
Agree, I will add the definition of used_state of splitted vq in the
next version
Thanks
Thanks
+
+If VIRTIO_F_QUEUE_STATE has been negotiated but
VIRTIO_RING_F_PACKED has been not, when SUSPEND is set,
+the device MUST record the available state of every enabled virtqueue in
\field{Available State},
+and restore the available state of every enabled virtqueue from
\field{Avaiable State}
+when DRIVER_OK is set.
+
\input{admin.tex}
\chapter{General Initialization And Device Operation}\label{sec:General
Initialization And Device Operation}
--
2.35.3
This publicly archived list offers a means to provide input to the
OASIS Virtual I/O Device (VIRTIO) TC.
In order to verify user consent to the Feedback License terms and
to minimize spam in the list archive, subscription is required
before posting.
Subscribe: [email protected]
Unsubscribe: [email protected]
List help: [email protected]
List archive: https://lists.oasis-open.org/archives/virtio-comment/
Feedback License: https://www.oasis-open.org/who/ipr/feedback_license.pdf
List Guidelines: https://www.oasis-open.org/policies-guidelines/mailing-lists
Committee: https://www.oasis-open.org/committees/virtio/
Join OASIS: https://www.oasis-open.org/join/