* [PATCH v4] virtio-net: Ignore num_buffers when unused
@ 2025-05-26 5:15 Akihiko Odaki
2025-05-27 4:21 ` Jason Wang
2025-05-29 6:50 ` Michael S. Tsirkin
0 siblings, 2 replies; 3+ messages in thread
From: Akihiko Odaki @ 2025-05-26 5:15 UTC (permalink / raw)
To: virtio-comment
Cc: Michael S. Tsirkin, Jason Wang, Parav Pandit, devel,
Akihiko Odaki
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 <akihiko.odaki@daynix.com>
Reviewed-by: Parav Pandit <parav@nvidia.com>
---
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/20250110-reserved-v3-1-2ade0a5d2090@daynix.com
Changes in v3:
- s/MUST/SHOULD/ (Michael S. Tsirkin)
- Link to v2: https://lore.kernel.org/r/20241227-reserved-v2-1-de9f9b0a808d@daynix.com
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/20241226-reserved-v1-1-39ca566889c0@daynix.com
---
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.
---
base-commit: b495841a8e80d12c1130f8868f4128866291142d
change-id: 20241226-reserved-d5960f173223
Best regards,
--
Akihiko Odaki <akihiko.odaki@daynix.com>
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH v4] virtio-net: Ignore num_buffers when unused
2025-05-26 5:15 [PATCH v4] virtio-net: Ignore num_buffers when unused Akihiko Odaki
@ 2025-05-27 4:21 ` Jason Wang
2025-05-29 6:50 ` Michael S. Tsirkin
1 sibling, 0 replies; 3+ messages in thread
From: Jason Wang @ 2025-05-27 4:21 UTC (permalink / raw)
To: Akihiko Odaki; +Cc: virtio-comment, Michael S. Tsirkin, Parav Pandit, devel
On Mon, May 26, 2025 at 1:15 PM Akihiko Odaki <akihiko.odaki@daynix.com> 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 <akihiko.odaki@daynix.com>
> Reviewed-by: Parav Pandit <parav@nvidia.com>
> ---
Reviewed-by: Jason Wang <jasowang@redhat.com>
Thanks
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH v4] virtio-net: Ignore num_buffers when unused
2025-05-26 5:15 [PATCH v4] virtio-net: Ignore num_buffers when unused Akihiko Odaki
2025-05-27 4:21 ` Jason Wang
@ 2025-05-29 6:50 ` Michael S. Tsirkin
1 sibling, 0 replies; 3+ messages in thread
From: Michael S. Tsirkin @ 2025-05-29 6:50 UTC (permalink / raw)
To: Akihiko Odaki; +Cc: virtio-comment, Jason Wang, Parav Pandit, devel
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 <akihiko.odaki@daynix.com>
> Reviewed-by: Parav Pandit <parav@nvidia.com>
> ---
> 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/20250110-reserved-v3-1-2ade0a5d2090@daynix.com
>
> Changes in v3:
> - s/MUST/SHOULD/ (Michael S. Tsirkin)
> - Link to v2: https://lore.kernel.org/r/20241227-reserved-v2-1-de9f9b0a808d@daynix.com
>
> 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/20241226-reserved-v1-1-39ca566889c0@daynix.com
> ---
> 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 <mst@redhat.com>
> ---
> base-commit: b495841a8e80d12c1130f8868f4128866291142d
> change-id: 20241226-reserved-d5960f173223
>
> Best regards,
> --
> Akihiko Odaki <akihiko.odaki@daynix.com>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-05-29 6:50 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-26 5:15 [PATCH v4] virtio-net: Ignore num_buffers when unused Akihiko Odaki
2025-05-27 4:21 ` Jason Wang
2025-05-29 6:50 ` Michael S. Tsirkin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox