[dpdk-dev] net/mlx5: fix socket assertion error during dev close

Message ID 20180206125422.91117-1-xuemingl@mellanox.com (mailing list archive)
State Accepted, archived
Delegated to: Shahaf Shuler
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Xueming Li Feb. 6, 2018, 12:54 p.m. UTC
  This patch fixed primary socket assertion error during close on a device
that failed to start.

Fixes: f8b9a3bad467 ("net/mlx5: install a socket to exchange a file descriptor")
Signed-off-by: Xueming Li <xuemingl@mellanox.com>
---
 drivers/net/mlx5/mlx5.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
  

Comments

Nélio Laranjeiro Feb. 6, 2018, 1:22 p.m. UTC | #1
On Tue, Feb 06, 2018 at 08:54:22PM +0800, Xueming Li wrote:
> This patch fixed primary socket assertion error during close on a device
> that failed to start.
> 
> Fixes: f8b9a3bad467 ("net/mlx5: install a socket to exchange a file descriptor")
> Signed-off-by: Xueming Li <xuemingl@mellanox.com>
> ---
>  drivers/net/mlx5/mlx5.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c
> index b66303d29..fb4463c2b 100644
> --- a/drivers/net/mlx5/mlx5.c
> +++ b/drivers/net/mlx5/mlx5.c
> @@ -201,7 +201,8 @@ mlx5_dev_close(struct rte_eth_dev *dev)
>  		rte_free(priv->rss_conf.rss_key);
>  	if (priv->reta_idx != NULL)
>  		rte_free(priv->reta_idx);
> -	priv_socket_uninit(priv);
> +	if (priv->primary_socket)
> +		priv_socket_uninit(priv);
>  	ret = mlx5_priv_hrxq_ibv_verify(priv);
>  	if (ret)
>  		WARN("%p: some Hash Rx queue still remain", (void *)priv);
> -- 
> 2.13.3
 
Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>
  
Thomas Monjalon Feb. 13, 2018, 3:56 p.m. UTC | #2
06/02/2018 14:22, Nélio Laranjeiro:
> On Tue, Feb 06, 2018 at 08:54:22PM +0800, Xueming Li wrote:
> > This patch fixed primary socket assertion error during close on a device
> > that failed to start.
> > 
> > Fixes: f8b9a3bad467 ("net/mlx5: install a socket to exchange a file descriptor")
> > Signed-off-by: Xueming Li <xuemingl@mellanox.com>
>  
> Acked-by: Nelio Laranjeiro <nelio.laranjeiro@6wind.com>

Applied, thanks
  

Patch

diff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c
index b66303d29..fb4463c2b 100644
--- a/drivers/net/mlx5/mlx5.c
+++ b/drivers/net/mlx5/mlx5.c
@@ -201,7 +201,8 @@  mlx5_dev_close(struct rte_eth_dev *dev)
 		rte_free(priv->rss_conf.rss_key);
 	if (priv->reta_idx != NULL)
 		rte_free(priv->reta_idx);
-	priv_socket_uninit(priv);
+	if (priv->primary_socket)
+		priv_socket_uninit(priv);
 	ret = mlx5_priv_hrxq_ibv_verify(priv);
 	if (ret)
 		WARN("%p: some Hash Rx queue still remain", (void *)priv);