| From foo@baz Sun 09 Feb 2020 10:56:46 PM CET |
| From: Raed Salem <raeds@mellanox.com> |
| Date: Wed, 23 Oct 2019 16:41:21 +0300 |
| Subject: net/mlx5: IPsec, fix memory leak at mlx5_fpga_ipsec_delete_sa_ctx |
| |
| From: Raed Salem <raeds@mellanox.com> |
| |
| [ Upstream commit 08db2cf577487f5123aebcc2f913e0b8a2c14b43 ] |
| |
| SA context is allocated at mlx5_fpga_ipsec_create_sa_ctx, |
| however the counterpart mlx5_fpga_ipsec_delete_sa_ctx function |
| nullifies sa_ctx pointer without freeing the memory allocated, |
| hence the memory leak. |
| |
| Fix by free SA context when the SA is released. |
| |
| Fixes: d6c4f0298cec ("net/mlx5: Refactor accel IPSec code") |
| Signed-off-by: Raed Salem <raeds@mellanox.com> |
| Reviewed-by: Boris Pismenny <borisp@mellanox.com> |
| Signed-off-by: Saeed Mahameed <saeedm@mellanox.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| --- a/drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c |
| +++ b/drivers/net/ethernet/mellanox/mlx5/core/fpga/ipsec.c |
| @@ -848,6 +848,7 @@ void mlx5_fpga_ipsec_delete_sa_ctx(void |
| mutex_lock(&fpga_xfrm->lock); |
| if (!--fpga_xfrm->num_rules) { |
| mlx5_fpga_ipsec_release_sa_ctx(fpga_xfrm->sa_ctx); |
| + kfree(fpga_xfrm->sa_ctx); |
| fpga_xfrm->sa_ctx = NULL; |
| } |
| mutex_unlock(&fpga_xfrm->lock); |