From 5dfb1c2f83252a3b3eb144fedacb2b42cc83ff13 Mon Sep 17 00:00:00 2001 From: Chenbo Xia Date: Fri, 19 Feb 2021 10:40:11 +0800 Subject: [PATCH] examples/vhost: check memory table query [ upstream commit 1739f814258cf7f4e25d55710918fa0ecc4d828e ] This patch fixes unchecked return value for rte_vhost_get_mem_table(), which is reported by coverity. Coverity issue: 364233 Fixes: ca059fa5e290 ("examples/vhost: demonstrate the new generic APIs") Signed-off-by: Chenbo Xia Reviewed-by: Maxime Coquelin --- examples/vhost/virtio_net.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/examples/vhost/virtio_net.c b/examples/vhost/virtio_net.c index 8ea6b36d59..28e4b00960 100644 --- a/examples/vhost/virtio_net.c +++ b/examples/vhost/virtio_net.c @@ -23,6 +23,7 @@ vs_vhost_net_setup(struct vhost_dev *dev) uint16_t i; int vid = dev->vid; struct vhost_queue *queue; + int ret; RTE_LOG(INFO, VHOST_CONFIG, "setting builtin vhost-user net driver\n"); @@ -33,7 +34,12 @@ vs_vhost_net_setup(struct vhost_dev *dev) else dev->hdr_len = sizeof(struct virtio_net_hdr); - rte_vhost_get_mem_table(vid, &dev->mem); + ret = rte_vhost_get_mem_table(vid, &dev->mem); + if (ret < 0) { + RTE_LOG(ERR, VHOST_CONFIG, "Failed to get " + "VM memory layout for device(%d)\n", vid); + return; + } dev->nr_vrings = rte_vhost_get_vring_num(vid); for (i = 0; i < dev->nr_vrings; i++) {