The Netlink message buffer is allocated and there is the typo, the other pointer is checked instead of returned one. If no memory is allocated and NULL is returned by allocation routine the bug causes segmentation fault. The patch fixes typo, returned pointer is validated.
Fixes: f420f03d6772 ("net/mlx5: add E-switch VXLAN rule cleanup routines") Signed-off-by: Viacheslav Ovsiienko <viachesl...@mellanox.com> --- drivers/net/mlx5/mlx5_flow_tcf.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/mlx5/mlx5_flow_tcf.c b/drivers/net/mlx5/mlx5_flow_tcf.c index fb817b2..ba0674a 100644 --- a/drivers/net/mlx5/mlx5_flow_tcf.c +++ b/drivers/net/mlx5/mlx5_flow_tcf.c @@ -4226,7 +4226,7 @@ struct tcf_nlcb_context { vxindex = ifm->ifi_index; cmd = flow_tcf_alloc_nlcmd(ctx, MNL_ALIGN(sizeof(struct nlmsghdr)) + MNL_ALIGN(sizeof(struct ifinfomsg))); - if (!nlh) { + if (!cmd) { rte_errno = ENOMEM; return -rte_errno; } -- 1.8.3.1