[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: [PATCH] virtio-net: Fix VIRTIO_NET_F_GUEST_HDRLEN feature definition.
Fix driver and device requirements with regards to the VIRTIO_NET_F_GUEST_HDRLEN feature - 'hdr_len' must be accurate only for TSO/UFO packets.
Signed-off-by: Vitaly Mireyno <vmireyno@marvell.com>
---
content.tex | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/content.tex b/content.tex
index b91a132..2f71f8f 100644
--- a/content.tex
+++ b/content.tex
@@ -3354,10 +3354,12 @@ \subsubsection{Packet Transmission}\label{sec:Device Types / Network Device / De
been negotiated:
\begin{itemize}
\item If the VIRTIO_NET_F_GUEST_HDRLEN feature has been negotiated,
+ and \field{gso_type} differs from VIRTIO_NET_HDR_GSO_NONE,
the driver MUST set \field{hdr_len} to a value equal to the length
of the headers, including the transport header.
\item If the VIRTIO_NET_F_GUEST_HDRLEN feature has not been negotiated,
+ or \field{gso_type} is VIRTIO_NET_HDR_GSO_NONE,
the driver SHOULD set \field{hdr_len} to a value
not less than the length of the headers, including the transport
header.
@@ -3379,6 +3381,7 @@ \subsubsection{Packet Transmission}\label{sec:Device Types / Network Device / De
been negotiated:
\begin{itemize}
\item If the VIRTIO_NET_F_GUEST_HDRLEN feature has been negotiated,
+ and \field{gso_type} differs from VIRTIO_NET_HDR_GSO_NONE,
the device MAY use \field{hdr_len} as the transport header size.
\begin{note}
@@ -3387,6 +3390,7 @@ \subsubsection{Packet Transmission}\label{sec:Device Types / Network Device / De
\end{note}
\item If the VIRTIO_NET_F_GUEST_HDRLEN feature has not been negotiated,
+ or \field{gso_type} is VIRTIO_NET_HDR_GSO_NONE,
the device MAY use \field{hdr_len} only as a hint about the
transport header size.
The device MUST NOT rely on \field{hdr_len} to be correct.
--
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]