[dpdk-dev] [PATCH 2/2] vhost: fix async enqueue accessing uninitialized variables
Marvin Liu
yong.liu at intel.com
Wed Apr 7 05:25:16 CEST 2021
This patch fixs coverity issue in async enqueue function by adding
initialization step before using temporary virtio header.
Coverity issue: 366123
Fixes: cd6760da1076 ("vhost: introduce async enqueue for split ring")
Cc: stable at dpdk.org
Signed-off-by: Marvin Liu <yong.liu at intel.com>
diff --git a/lib/librte_vhost/virtio_net.c b/lib/librte_vhost/virtio_net.c
index 48b013a9b4..ff39878609 100644
--- a/lib/librte_vhost/virtio_net.c
+++ b/lib/librte_vhost/virtio_net.c
@@ -986,9 +986,10 @@ async_mbuf_to_desc(struct virtio_net *dev, struct vhost_virtqueue *vq,
hdr_mbuf = m;
hdr_addr = buf_addr;
- if (unlikely(buf_len < dev->vhost_hlen))
+ if (unlikely(buf_len < dev->vhost_hlen)) {
+ memset(&tmp_hdr, 0, sizeof(struct virtio_net_hdr_mrg_rxbuf));
hdr = &tmp_hdr;
- else
+ } else
hdr = (struct virtio_net_hdr_mrg_rxbuf *)(uintptr_t)hdr_addr;
VHOST_LOG_DATA(DEBUG, "(%d) RX: num merge buffers %d\n",
--
2.17.1
More information about the dev
mailing list