diff mbox series

virtio-net: Fix num_buffers for version 1

Message ID 20250108-buffers-v1-1-a0c85ff31aeb@daynix.com (mailing list archive)
State New
Headers show
Series virtio-net: Fix num_buffers for version 1 | expand

Commit Message

Akihiko Odaki Jan. 8, 2025, 12:13 p.m. UTC
The specification says the device MUST set num_buffers to 1 if
VIRTIO_NET_F_MRG_RXBUF has not been negotiated.

Fixes: df91055db5c9 ("virtio-net: enable virtio 1.0")
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
---
 hw/net/virtio-net.c | 2 ++
 1 file changed, 2 insertions(+)


---
base-commit: 38d0939b86e2eef6f6a622c6f1f7befda0146595
change-id: 20241227-buffers-6bd3493c287e

Best regards,
diff mbox series

Patch

diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c
index 06f096abf678..b241cd4bb48a 100644
--- a/hw/net/virtio-net.c
+++ b/hw/net/virtio-net.c
@@ -1992,6 +1992,8 @@  static ssize_t virtio_net_receive_rcu(NetClientState *nc, const uint8_t *buf,
                                     offsetof(typeof(hdr),
                                              virtio_net.hdr.num_buffers),
                                     sizeof(hdr.virtio_net.hdr.num_buffers));
+            } else {
+                hdr.virtio_net.hdr.num_buffers = cpu_to_le16(1);
             }
 
             guest_offset = n->has_vnet_hdr ?