[v2] net/vhost: fix return value of vhost creates not checked

Message ID 1576546577-17048-1-git-send-email-wangyunjian@huawei.com (mailing list archive)
State Superseded, archived
Delegated to: Maxime Coquelin
Headers
Series [v2] net/vhost: fix return value of vhost creates not checked |

Checks

Context Check Description
ci/checkpatch warning coding style issues
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-testing success Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS
ci/travis-robot success Travis build: passed
ci/Intel-compilation fail apply issues

Commit Message

Yunjian Wang Dec. 17, 2019, 1:36 a.m. UTC
  The function eth_dev_vhost_create() could return errors,
the return value need to be checked.

Fixes: ee584e9710b9 ("vhost: add driver on top of the library")
Cc: stable@dpdk.org

Signed-off-by: Yunjian Wang <wangyunjian@huawei.com>
---
v2:
 -change function eth_dev_vhost_create return 0 on success
---
 drivers/net/vhost/rte_eth_vhost.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)
  

Comments

Tiwei Bie Jan. 7, 2020, 2:31 a.m. UTC | #1
On Tue, Dec 17, 2019 at 09:36:17AM +0800, Yunjian Wang wrote:
>  
> -	eth_dev_vhost_create(dev, iface_name, queues, dev->device.numa_node,
> -		flags, disable_flags);
> +	ret = eth_dev_vhost_create(dev, iface_name, queues,
> +				   dev->device.numa_node, flags, disable_flags);
> +	if (ret == -1)
> +		VHOST_LOG(ERR, "Failed to create %s", name);

A newline is needed at the end of the error message.
Other than that,

Reviewed-by: Tiwei Bie <tiwei.bie@intel.com>
  
Yunjian Wang Jan. 7, 2020, 3:15 a.m. UTC | #2
Thanks, I will fix it in v3.

Yunjian
> -----Original Message-----
> From: Tiwei Bie [mailto:tiwei.bie@intel.com]
> Sent: Tuesday, January 7, 2020 10:32 AM
> To: wangyunjian <wangyunjian@huawei.com>
> Cc: dev@dpdk.org; maxime.coquelin@redhat.com; zhihong.wang@intel.com;
> xudingke <xudingke@huawei.com>; stable@dpdk.org
> Subject: Re: [PATCH v2] net/vhost: fix return value of vhost creates not checked
> 
> On Tue, Dec 17, 2019 at 09:36:17AM +0800, Yunjian Wang wrote:
> >
> > -	eth_dev_vhost_create(dev, iface_name, queues, dev->device.numa_node,
> > -		flags, disable_flags);
> > +	ret = eth_dev_vhost_create(dev, iface_name, queues,
> > +				   dev->device.numa_node, flags, disable_flags);
> > +	if (ret == -1)
> > +		VHOST_LOG(ERR, "Failed to create %s", name);
> 
> A newline is needed at the end of the error message.
> Other than that,
> 
> Reviewed-by: Tiwei Bie <tiwei.bie@intel.com>
  

Patch

diff --git a/drivers/net/vhost/rte_eth_vhost.c b/drivers/net/vhost/rte_eth_vhost.c
index 46f01a7..e927669 100644
--- a/drivers/net/vhost/rte_eth_vhost.c
+++ b/drivers/net/vhost/rte_eth_vhost.c
@@ -1302,7 +1302,7 @@  struct vhost_xstats_name_off {
 	}
 
 	rte_eth_dev_probing_finish(eth_dev);
-	return data->port_id;
+	return 0;
 
 error:
 	if (internal) {
@@ -1455,8 +1455,10 @@  struct vhost_xstats_name_off {
 	if (dev->device.numa_node == SOCKET_ID_ANY)
 		dev->device.numa_node = rte_socket_id();
 
-	eth_dev_vhost_create(dev, iface_name, queues, dev->device.numa_node,
-		flags, disable_flags);
+	ret = eth_dev_vhost_create(dev, iface_name, queues,
+				   dev->device.numa_node, flags, disable_flags);
+	if (ret == -1)
+		VHOST_LOG(ERR, "Failed to create %s", name);
 
 out_free:
 	rte_kvargs_free(kvlist);