[dpdk-dev] [PATCH v2] net/mlx5: fix error number handling
Nélio Laranjeiro
nelio.laranjeiro at 6wind.com
Wed Jun 20 09:02:40 CEST 2018
On Tue, Jun 19, 2018 at 04:13:13PM -0700, Yongseok Koh wrote:
> rte_errno should be saved only if error has occurred because rte_errno
> could have garbage value.
>
> Fixes: a6d83b6a9209 ("net/mlx5: standardize on negative errno values")
> Cc: stable at dpdk.org
>
> Signed-off-by: Yongseok Koh <yskoh at mellanox.com>
Acked-by: Nelio Laranjeiro <nelio.laranjeiro at 6wind.com>
> ---
> drivers/net/mlx5/mlx5_flow.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c
> index 994be05be..45207d70e 100644
> --- a/drivers/net/mlx5/mlx5_flow.c
> +++ b/drivers/net/mlx5/mlx5_flow.c
> @@ -3561,15 +3561,17 @@ mlx5_fdir_filter_delete(struct rte_eth_dev *dev,
> /* The flow does not match. */
> continue;
> }
> - ret = rte_errno; /* Save rte_errno before cleanup. */
> if (flow)
> mlx5_flow_list_destroy(dev, &priv->flows, flow);
> exit:
> + if (ret)
> + ret = rte_errno; /* Save rte_errno before cleanup. */
> for (i = 0; i != hash_rxq_init_n; ++i) {
> if (parser.queue[i].ibv_attr)
> rte_free(parser.queue[i].ibv_attr);
> }
> - rte_errno = ret; /* Restore rte_errno. */
> + if (ret)
> + rte_errno = ret; /* Restore rte_errno. */
> return -rte_errno;
> }
>
> --
> 2.11.0
--
Nélio Laranjeiro
6WIND
More information about the dev
mailing list