public inbox for virtio-comment@lists.linux.dev
 help / color / mirror / Atom feed
* [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

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