On Fri, Feb 18, 2022 at 5:27 PM Michael S. Tsirkin <[email protected]> wrote:
>
> On Thu, Feb 10, 2022 at 05:26:24PM +0800, Jason Wang wrote:
> > On Thu, Feb 10, 2022 at 5:06 PM Xuan Zhuo <[email protected]>
> > wrote:
> > >
> > > This patch defines some requirements for virtio-net to support reset
> > > queues.
> > >
> > > Signed-off-by: Xuan Zhuo <[email protected]>
> > > ---
> > > conformance.tex | 1 +
> > > content.tex | 12 ++++++++++++
> > > 2 files changed, 13 insertions(+)
> > >
> > > diff --git a/conformance.tex b/conformance.tex
> > > index 42f8537..3656da5 100644
> > > --- a/conformance.tex
> > > +++ b/conformance.tex
> > > @@ -396,6 +396,7 @@ \section{Conformance Targets}\label{sec:Conformance /
> > > Conformance Targets}
> > > \item \ref{devicenormative:Device Types / Network Device / Device
> > > Operation / Packet Transmission}
> > > \item \ref{devicenormative:Device Types / Network Device / Device
> > > Operation / Setting Up Receive Buffers}
> > > \item \ref{devicenormative:Device Types / Network Device / Device
> > > Operation / Processing of Incoming Packets}
> > > +\item \ref{devicenormative:Device Types / Network Device / Device
> > > Operation / Reset Virtqueue}
> > > \item \ref{devicenormative:Device Types / Network Device / Device
> > > Operation / Control Virtqueue / Packet Receive Filtering}
> > > \item \ref{devicenormative:Device Types / Network Device / Device
> > > Operation / Control Virtqueue / Setting MAC Address Filtering}
> > > \item \ref{devicenormative:Device Types / Network Device / Device
> > > Operation / Control Virtqueue / Gratuitous Packet Sending}
> > > diff --git a/content.tex b/content.tex
> > > index c6f116c..af86689 100644
> > > --- a/content.tex
> > > +++ b/content.tex
> > > @@ -4000,6 +4000,18 @@ \subsubsection{Processing of Incoming
> > > Packets}\label{sec:Device Types / Network
> > > #define VIRTIO_NET_HASH_REPORT_UDPv6_EX 9
> > > \end{lstlisting}
> > >
> > > +\subsubsection{Reset Virtqueue}\label{sec:Device Types / Network Device
> > > / Device Operation / Reset Virtqueue}
> > > +
> > > +The receive and transmission virtqueues and the control virtqueue can
> > > implement
> > > +reset based on Virtqueue Reset (See \ref{sec:Basic Facilities of a
> > > Virtio Device / Virtqueues / Virtqueue Reset}).
> > > +
> > > +\devicenormative{\paragraph}{Gratuitous Packet Sending}{Device Types /
> > > Network Device / Device Operation / Reset Virtqueue}
> > > +
> > > +After automatic receive steering or RSS receive steering has completed
> > > the
> > > +selection of the queue, if the destination receive queue is in reset
> > > state,
> > > +the device SHOULD re-select a different random queue.
> >
> > This seems break the semantics of the indirection table?
>
> I don't really understand this random thing either. If we don't want to
> drop then maybe use unclassified_queue?
> And generally - is packet reordering better or worse than packet drops?
Not sure, but this is something we need to clarify in the spec.
Personally, drop looks more safe than unclassified_queue. It gives
hints to administrator that something is wrong.
Thanks
>
> > For RSS, I
> > think we probably need to drop.
> >
> > Thanks
> >
> > > If all receive queues are
> > > +in reset state, the device can drop the packet.
> > > +
> > > \subsubsection{Control Virtqueue}\label{sec:Device Types / Network
> > > Device / Device Operation / Control Virtqueue}
> > >
> > > The driver uses the control virtqueue (if VIRTIO_NET_F_CTRL_VQ is
> > > --
> > > 2.31.0
> > >
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]