The rte_flow_error needs to be set when the age pool initialization
has a failure. Or else the application will crash due to the access
of the invalid "message" field.

Fixes: 04a4de756e14 ("net/mlx5: support flow age action with HWS")
Cc: michae...@nvidia.com

Signed-off-by: Bing Zhao <bi...@nvidia.com>
Acked-by: Ori Kam <or...@nvidia.com>
---
 drivers/net/mlx5/mlx5_flow_hw.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/net/mlx5/mlx5_flow_hw.c b/drivers/net/mlx5/mlx5_flow_hw.c
index 4163fe23e6..20941b4fc7 100644
--- a/drivers/net/mlx5/mlx5_flow_hw.c
+++ b/drivers/net/mlx5/mlx5_flow_hw.c
@@ -7913,8 +7913,11 @@ flow_hw_configure(struct rte_eth_dev *dev,
                        goto err;
                }
                ret = mlx5_hws_age_pool_init(dev, port_attr, nb_queue);
-               if (ret < 0)
+               if (ret < 0) {
+                       rte_flow_error_set(error, -ret, 
RTE_FLOW_ERROR_TYPE_UNSPECIFIED,
+                                          NULL, "Failed to init age pool.");
                        goto err;
+               }
        }
        ret = flow_hw_create_vlan(dev);
        if (ret)
-- 
2.34.1

Reply via email to