Currently MACsec initialization error path does not
destroy sci hash table in case of failure.
Fix by destroying hash table in case of failure.
Fixes: 9515978eee0b ("net/mlx5e: Implement MACsec Tx data path using MACsec skb_metadata_dst")
Signed-off-by: Emeel Hakim <ehakim@nvidia.com>
Reviewed-by: Tariq Toukan <tariqt@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
        if (err) {
                mlx5_core_err(mdev, "MACsec offload: Failed to init SCI hash table, err=%d\n",
                              err);
-               goto err_out;
+               goto err_hash;
        }
 
        xa_init_flags(&macsec->sc_xarray, XA_FLAGS_ALLOC1);
        return 0;
 
 err_out:
+       rhashtable_destroy(&macsec->sci_hash);
+err_hash:
        mlx5_core_dealloc_pd(priv->mdev, macsec->aso_pdn);
 err_pd:
        kfree(macsec);