Re: [PATCH v4] virtio-net: Ignore num_buffers when unused
"Michael S. Tsirkin" <[email protected]>
| Newsgroups | dev.linux.lists.virtio-comment |
|---|---|
| Message-ID | <[email protected]> |
On Mon, May 26, 2025 at 02:15:19PM +0900, Akihiko Odaki wrote: > If VIRTIO_NET_F_MRG_RXBUF has not been negotiated, vhost_net of Linux > prior to 6.14 and QEMU prior to 10.0.0 leave num_buffers uninitialized > while the specification tells to set it to one. > > Let drivers ignore this field to make them compatible with old > vhost_net/QEMU, similar to the hdr_len field, which is also marked as > unreliable due to implementation bugs. > > Signed-off-by: Akihiko Odaki <[email protected]> > Reviewed-by: Parav Pandit <[email protected]> > --- > Changes in v4: > - Noted that the mentioned bugs are fixed with newer implementation > versions in the patch message. > - Noted that the bugs are of devices. (Parav Pandit) > - Link to v3: https://lore.kernel.org/r/[email protected] > > Changes in v3: > - s/MUST/SHOULD/ (Michael S. Tsirkin) > - Link to v2: https://lore.kernel.org/r/[email protected] > > Changes in v2: > - Corrected the change description to tell vhost_net and QEMU leaves > num_buffers uninitialized where it used to tell they set it to zero. > - Restored statements that require devices to set num_buffers to one. > - Link to v1: https://lore.kernel.org/r/[email protected] > --- > device-types/net/description.tex | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/device-types/net/description.tex b/device-types/net/description.tex > index 76585b0..4a2df5a 100644 > --- a/device-types/net/description.tex > +++ b/device-types/net/description.tex > @@ -863,6 +863,12 @@ \subsubsection{Processing of Incoming Packets}\label{sec:Device Types / Network > This is due to various bugs in implementations. > \end{note} > > +If VIRTIO_NET_F_MRG_RXBUF has not been negotiated, the driver SHOULD ignore > +\field{num_buffers}. > +\begin{note} > +This is due to bugs in device implementations. > +\end{note} > + > If neither VIRTIO_NET_HDR_F_NEEDS_CSUM nor > VIRTIO_NET_HDR_F_DATA_VALID is set, the driver MUST NOT > rely on the packet checksum being correct. Acked-by: Michael S. Tsirkin <[email protected]> > --- > base-commit: b495841a8e80d12c1130f8868f4128866291142d > change-id: 20241226-reserved-d5960f173223 > > Best regards, > -- > Akihiko Odaki <[email protected]>