net/mlx5e: Fix possible memory leak

'encap_header' is malloced and should be freed before leaving from
the error handling cases, otherwise it will cause memory leak.

Fixes: 232c001398 ("net/mlx5e: Add support to neighbour update flow")
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Reviewed-by: Yuval Shaia <yuval.shaia@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Wei Yongjun 2017-05-18 15:34:41 +00:00 committed by David S. Miller
parent 74ed053d1c
commit 27902f0806

View File

@ -1404,8 +1404,8 @@ static int mlx5e_create_encap_header_ipv4(struct mlx5e_priv *priv,
if (!(nud_state & NUD_VALID)) {
neigh_event_send(n, NULL);
neigh_release(n);
return -EAGAIN;
err = -EAGAIN;
goto out;
}
err = mlx5_encap_alloc(priv->mdev, e->tunnel_type,
@ -1510,8 +1510,8 @@ static int mlx5e_create_encap_header_ipv6(struct mlx5e_priv *priv,
if (!(nud_state & NUD_VALID)) {
neigh_event_send(n, NULL);
neigh_release(n);
return -EAGAIN;
err = -EAGAIN;
goto out;
}
err = mlx5_encap_alloc(priv->mdev, e->tunnel_type,