X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fmlx5%2Fmlx5_socket.c;h=00106171d3cbe3bf15be3108b4a413e1f5205707;hb=5d7b673d5fd6663b20c675dd382d9fb43b42af18;hp=7ce2ebceef075ffdcab77435d72b0e61ba26989e;hpb=be939f60f42673eaa99609ea2c9f876e29320eff;p=dpdk.git diff --git a/drivers/net/mlx5/mlx5_socket.c b/drivers/net/mlx5/mlx5_socket.c index 7ce2ebceef..00106171d3 100644 --- a/drivers/net/mlx5/mlx5_socket.c +++ b/drivers/net/mlx5/mlx5_socket.c @@ -1,9 +1,8 @@ /* SPDX-License-Identifier: BSD-3-Clause * Copyright 2016 6WIND S.A. + * Copyright 2016 Mellanox Technologies, Ltd */ -#define _GNU_SOURCE - #include #include #include @@ -34,6 +33,12 @@ mlx5_socket_init(struct rte_eth_dev *dev) int ret; int flags; + /* + * Close the last socket that was used to communicate + * with the secondary process + */ + if (priv->primary_socket) + mlx5_socket_uninit(dev); /* * Initialise the socket to communicate with the secondary * process. @@ -293,7 +298,7 @@ mlx5_socket_connect(struct rte_eth_dev *dev) } ret = *fd; close(socket_fd); - return 0; + return ret; error: if (socket_fd != -1) close(socket_fd);