diff options
author | Yan Cangang <nalanzeyu@gmail.com> | 2022-11-20 13:52:59 +0800 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2022-11-22 20:16:45 -0800 |
commit | 603ea5e7ffa73c7fac07d8713d97285990695213 (patch) | |
tree | 445cbcddac0a83d19c0e187ba2fafb6735d2efef /drivers/net/ethernet/mediatek/mtk_ppe.h | |
parent | 8110437e59616293228cd781c486d8495a61e36a (diff) | |
download | linux-stable-603ea5e7ffa73c7fac07d8713d97285990695213.tar.gz linux-stable-603ea5e7ffa73c7fac07d8713d97285990695213.tar.bz2 linux-stable-603ea5e7ffa73c7fac07d8713d97285990695213.zip |
net: ethernet: mtk_eth_soc: fix memory leak in error path
In mtk_ppe_init(), when dmam_alloc_coherent() or devm_kzalloc() failed,
the rhashtable ppe->l2_flows isn't destroyed. Fix it.
In mtk_probe(), when mtk_ppe_init() or mtk_eth_offload_init() or
register_netdev() failed, have the same problem. Fix it.
Fixes: 33fc42de3327 ("net: ethernet: mtk_eth_soc: support creating mac address based offload entries")
Signed-off-by: Yan Cangang <nalanzeyu@gmail.com>
Reviewed-by: Leon Romanovsky <leonro@nvidia.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net/ethernet/mediatek/mtk_ppe.h')
-rw-r--r-- | drivers/net/ethernet/mediatek/mtk_ppe.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mediatek/mtk_ppe.h b/drivers/net/ethernet/mediatek/mtk_ppe.h index 0b7a67a958e4..a09c32539bcc 100644 --- a/drivers/net/ethernet/mediatek/mtk_ppe.h +++ b/drivers/net/ethernet/mediatek/mtk_ppe.h @@ -304,6 +304,7 @@ struct mtk_ppe { struct mtk_ppe *mtk_ppe_init(struct mtk_eth *eth, void __iomem *base, int version, int index); +void mtk_ppe_deinit(struct mtk_eth *eth); void mtk_ppe_start(struct mtk_ppe *ppe); int mtk_ppe_stop(struct mtk_ppe *ppe); |