The virtio_net_hdr desc all pointed to the same buffer. It doesn't cause
issue because in the simple TX mode we don't use the header. This patch
makes the header desc point to different buffer.

Signed-off-by: Huawei Xie <huawei.xie at intel.com>
---
 drivers/net/virtio/virtio_rxtx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/virtio/virtio_rxtx.c b/drivers/net/virtio/virtio_rxtx.c
index 74b39ef..6cfd315 100644
--- a/drivers/net/virtio/virtio_rxtx.c
+++ b/drivers/net/virtio/virtio_rxtx.c
@@ -352,7 +352,7 @@ virtio_dev_vring_start(struct virtqueue *vq, int queue_type)
                                vq->vq_ring.desc[i + mid_idx].next = i;
                                vq->vq_ring.desc[i + mid_idx].addr =
                                        vq->virtio_net_hdr_mem +
-                                               mid_idx * 
vq->hw->vtnet_hdr_size;
+                                               i * vq->hw->vtnet_hdr_size;
                                vq->vq_ring.desc[i + mid_idx].len =
                                        vq->hw->vtnet_hdr_size;
                                vq->vq_ring.desc[i + mid_idx].flags =
-- 
1.8.1.4

Reply via email to