On 2021/1/14 ??7:58, Cornelia Huck wrote:
> Properly specify that the method for the driver to request a
> device reset is transport specific, and some action the device
> has to take.
>
> Signed-off-by: Cornelia Huck <
cohuck@redhat.com>
> ---
> conformance.tex | 1 +
> content.tex | 8 ++++++++
> 2 files changed, 9 insertions(+)
>
> diff --git a/conformance.tex b/conformance.tex
> index eb3324053080..baf4574e411f 100644
> --- a/conformance.tex
> +++ b/conformance.tex
> @@ -279,6 +279,7 @@ \section{Conformance Targets}\label{sec:Conformance / Conformance Targets}
> \item \ref{devicenormative:Basic Facilities of a Virtio Device / Virtqueues / The Virtqueue Used Ring}
> \item \ref{devicenormative:Basic Facilities of a Virtio Device / Virtqueues / Available Buffer Notification Suppression}
> \item \ref{devicenormative:Basic Facilities of a Virtio Device / Shared Memory Regions}
> +\item \ref{devicenormative:General Initialization And Device Operation / Device Cleanup}
I wonder whether it's better to move this to "Basic Facilities of a
Virtio Device"?
Thanks
> \item \ref{devicenormative:Reserved Feature Bits}
> \end{itemize}
>
> diff --git a/content.tex b/content.tex
> index 620c0e28c9a7..126b46996be8 100644
> --- a/content.tex
> +++ b/content.tex
> @@ -501,6 +501,8 @@ \section{Device Cleanup}\label{sec:General Initialization And Device Operation /
> virtqueue of the device are considered live. None of the virtqueues
> of a device are live once the device has been reset.
>
> +A driver can initiate a device reset by a transport-specific mechanism.
> +
> \drivernormative{\subsection}{Device Cleanup}{General Initialization And Device Operation / Device Cleanup}
>
> A driver MUST NOT alter virtqueue entries for exposed buffers,
> @@ -510,6 +512,12 @@ \section{Device Cleanup}\label{sec:General Initialization And Device Operation /
>
> Thus a driver MUST ensure a virtqueue isn't live (by device reset) before removing exposed buffers.
>
> +\devicenormative{\subsection}{Device Cleanup}{General Initialization And Device Operation / Device Cleanup}
> +
> +A device MUST reinitialize device status to 0 after receiving a reset.
> +
> +A device MUST NOT send notifications after receiving a reset.
> +
> \chapter{Virtio Transport Options}\label{sec:Virtio Transport Options}
>
> Virtio can use various different buses, thus the standard is split