From b98b61c308f84eaf82977db6fbd792775486e4c1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?N=C3=A9lio=20Laranjeiro?= Date: Wed, 1 Mar 2017 13:49:40 +0100 Subject: [PATCH] net/mlx5: fix drop queue creation error Creating a drop queue in mlx5 ends by creating a non polled queue, but if the associated work queue could not be created the error was not handled ending in a undefined situation. Fixes: 2097d0d1e2cc ("net/mlx5: support basic flow items and actions") Cc: stable@dpdk.org Signed-off-by: Nelio Laranjeiro --- drivers/net/mlx5/mlx5_flow.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c index 23c1b5ef3c..6765a77af3 100644 --- a/drivers/net/mlx5/mlx5_flow.c +++ b/drivers/net/mlx5/mlx5_flow.c @@ -902,6 +902,12 @@ priv_flow_create_action_queue(struct priv *priv, .pd = priv->pd, .cq = rte_flow->cq, }); + if (!rte_flow->wq) { + rte_flow_error_set(error, ENOMEM, + RTE_FLOW_ERROR_TYPE_HANDLE, + NULL, "cannot allocate WQ"); + goto error; + } } else { rxq = container_of((*priv->rxqs)[action->queue_id], struct rxq_ctrl, rxq); -- 2.20.1