From 62a0e941b5000fec02dc3bd3efed092b809ce570 Mon Sep 17 00:00:00 2001 From: Jerin Jacob Date: Fri, 2 Jun 2017 16:50:31 +0530 Subject: [PATCH] examples/vhost: fix uninitialized descriptor indexes MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Fixing the below error by returning from the function early when count == 0. Issue flagged by GCC 7.1.1 examples/vhost/virtio_net.c:370:38: error: ‘desc_indexes[0]’ may be used uninitialized in this function [-Werror=maybe-uninitialized] rte_prefetch0(&vr->desc[desc_indexes[0]]); Fixes: ca059fa5e290 ("examples/vhost: demonstrate the new generic APIs") Cc: stable@dpdk.org Signed-off-by: Jerin Jacob Reviewed-by: Maxime Coquelin --- examples/vhost/virtio_net.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/examples/vhost/virtio_net.c b/examples/vhost/virtio_net.c index cc2c3d8827..5e1ed44a5d 100644 --- a/examples/vhost/virtio_net.c +++ b/examples/vhost/virtio_net.c @@ -350,6 +350,9 @@ vs_dequeue_pkts(struct vhost_dev *dev, uint16_t queue_id, count = RTE_MIN(count, MAX_PKT_BURST); count = RTE_MIN(count, free_entries); + if (unlikely(count == 0)) + return 0; + /* * Retrieve all of the head indexes first and pre-update used entries * to avoid caching issues. @@ -385,8 +388,6 @@ vs_dequeue_pkts(struct vhost_dev *dev, uint16_t queue_id, } } - if (!i) - return 0; queue->last_avail_idx += i; queue->last_used_idx += i; -- 2.20.1