If RSS action contains non zero hash key length and NULL key buffer pointer the default hash key should be used. The check for the NULL pointer this was missing in the mlx4 PMD causing crash, for example, in testpmd with command:
flow validate 0 ingress group 0 pattern eth / ipv4 / end actions rss queues 0 end key_len 40 / end Fixes: ac8d22de2394 ("ethdev: flatten RSS configuration in flow API") Cc: sta...@dpdk.org Signed-off-by: Viacheslav Ovsiienko <viachesl...@nvidia.com> --- drivers/net/mlx4/mlx4_flow.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/mlx4/mlx4_flow.c b/drivers/net/mlx4/mlx4_flow.c index 43a65abcc0..71ea91b3fb 100644 --- a/drivers/net/mlx4/mlx4_flow.c +++ b/drivers/net/mlx4/mlx4_flow.c @@ -791,7 +791,8 @@ mlx4_flow_prepare(struct mlx4_priv *priv, rss = action->conf; /* Default RSS configuration if none is provided. */ if (rss->key_len) { - rss_key = rss->key; + rss_key = rss->key ? + rss->key : mlx4_rss_hash_key_default; rss_key_len = rss->key_len; } else { rss_key = mlx4_rss_hash_key_default; -- 2.28.0