* [PATCH 1/2] octeontx2-af: Add a 'rvu_free_bitmap()' function
@ 2021-09-04 7:34 Christophe JAILLET
2021-09-04 7:34 ` [PATCH 2/2] octeontx2-af: Fix some memory leaks in the error handling path of 'cgx_lmac_init()' Christophe JAILLET
2021-09-04 12:10 ` [PATCH 1/2] octeontx2-af: Add a 'rvu_free_bitmap()' function patchwork-bot+netdevbpf
0 siblings, 2 replies; 3+ messages in thread
From: Christophe JAILLET @ 2021-09-04 7:34 UTC (permalink / raw)
To: sgoutham, lcherian, gakula, jerinj, hkelam, sbhatta, davem, kuba, skori
Cc: netdev, linux-kernel, kernel-janitors, Christophe JAILLET
In order to match 'rvu_alloc_bitmap()', add a 'rvu_free_bitmap()' function
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
---
drivers/net/ethernet/marvell/octeontx2/af/rvu.c | 5 +++++
drivers/net/ethernet/marvell/octeontx2/af/rvu.h | 1 +
2 files changed, 6 insertions(+)
diff --git a/drivers/net/ethernet/marvell/octeontx2/af/rvu.c b/drivers/net/ethernet/marvell/octeontx2/af/rvu.c
index 72de4eca6f67..35836903b7fb 100644
--- a/drivers/net/ethernet/marvell/octeontx2/af/rvu.c
+++ b/drivers/net/ethernet/marvell/octeontx2/af/rvu.c
@@ -211,6 +211,11 @@ int rvu_alloc_bitmap(struct rsrc_bmap *rsrc)
return 0;
}
+void rvu_free_bitmap(struct rsrc_bmap *rsrc)
+{
+ kfree(rsrc->bmap);
+}
+
/* Get block LF's HW index from a PF_FUNC's block slot number */
int rvu_get_lf(struct rvu *rvu, struct rvu_block *block, u16 pcifunc, u16 slot)
{
diff --git a/drivers/net/ethernet/marvell/octeontx2/af/rvu.h b/drivers/net/ethernet/marvell/octeontx2/af/rvu.h
index d38e5c980c30..1d9411232f1d 100644
--- a/drivers/net/ethernet/marvell/octeontx2/af/rvu.h
+++ b/drivers/net/ethernet/marvell/octeontx2/af/rvu.h
@@ -638,6 +638,7 @@ static inline bool is_rvu_fwdata_valid(struct rvu *rvu)
}
int rvu_alloc_bitmap(struct rsrc_bmap *rsrc);
+void rvu_free_bitmap(struct rsrc_bmap *rsrc);
int rvu_alloc_rsrc(struct rsrc_bmap *rsrc);
void rvu_free_rsrc(struct rsrc_bmap *rsrc, int id);
bool is_rsrc_free(struct rsrc_bmap *rsrc, int id);
--
2.30.2
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH 2/2] octeontx2-af: Fix some memory leaks in the error handling path of 'cgx_lmac_init()'
2021-09-04 7:34 [PATCH 1/2] octeontx2-af: Add a 'rvu_free_bitmap()' function Christophe JAILLET
@ 2021-09-04 7:34 ` Christophe JAILLET
2021-09-04 12:10 ` [PATCH 1/2] octeontx2-af: Add a 'rvu_free_bitmap()' function patchwork-bot+netdevbpf
1 sibling, 0 replies; 3+ messages in thread
From: Christophe JAILLET @ 2021-09-04 7:34 UTC (permalink / raw)
To: sgoutham, lcherian, gakula, jerinj, hkelam, sbhatta, davem, kuba, skori
Cc: netdev, linux-kernel, kernel-janitors, Christophe JAILLET
Memory allocated before 'lmac' is stored in 'cgx->lmac_idmap[]' must be
freed explicitly. Otherwise, in case of error, it will leak.
Rename the 'err_irq' label to better describe what is done at this place in
the error handling path.
Fixes: 6f14078e3ee5 ("octeontx2-af: DMAC filter support in MAC block")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
---
drivers/net/ethernet/marvell/octeontx2/af/cgx.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/marvell/octeontx2/af/cgx.c b/drivers/net/ethernet/marvell/octeontx2/af/cgx.c
index 7f3d01059e19..34a089b71e55 100644
--- a/drivers/net/ethernet/marvell/octeontx2/af/cgx.c
+++ b/drivers/net/ethernet/marvell/octeontx2/af/cgx.c
@@ -1487,7 +1487,7 @@ static int cgx_lmac_init(struct cgx *cgx)
MAX_DMAC_ENTRIES_PER_CGX / cgx->lmac_count;
err = rvu_alloc_bitmap(&lmac->mac_to_index_bmap);
if (err)
- return err;
+ goto err_name_free;
/* Reserve first entry for default MAC address */
set_bit(0, lmac->mac_to_index_bmap.bmap);
@@ -1497,7 +1497,7 @@ static int cgx_lmac_init(struct cgx *cgx)
spin_lock_init(&lmac->event_cb_lock);
err = cgx_configure_interrupt(cgx, lmac, lmac->lmac_id, false);
if (err)
- goto err_irq;
+ goto err_bitmap_free;
/* Add reference */
cgx->lmac_idmap[lmac->lmac_id] = lmac;
@@ -1507,7 +1507,9 @@ static int cgx_lmac_init(struct cgx *cgx)
return cgx_lmac_verify_fwi_version(cgx);
-err_irq:
+err_bitmap_free:
+ rvu_free_bitmap(&lmac->mac_to_index_bmap);
+err_name_free:
kfree(lmac->name);
err_lmac_free:
kfree(lmac);
--
2.30.2
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH 1/2] octeontx2-af: Add a 'rvu_free_bitmap()' function
2021-09-04 7:34 [PATCH 1/2] octeontx2-af: Add a 'rvu_free_bitmap()' function Christophe JAILLET
2021-09-04 7:34 ` [PATCH 2/2] octeontx2-af: Fix some memory leaks in the error handling path of 'cgx_lmac_init()' Christophe JAILLET
@ 2021-09-04 12:10 ` patchwork-bot+netdevbpf
1 sibling, 0 replies; 3+ messages in thread
From: patchwork-bot+netdevbpf @ 2021-09-04 12:10 UTC (permalink / raw)
To: Christophe JAILLET
Cc: sgoutham, lcherian, gakula, jerinj, hkelam, sbhatta, davem, kuba,
skori, netdev, linux-kernel, kernel-janitors
Hello:
This series was applied to netdev/net.git (refs/heads/master):
On Sat, 4 Sep 2021 09:34:41 +0200 you wrote:
> In order to match 'rvu_alloc_bitmap()', add a 'rvu_free_bitmap()' function
>
> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
> ---
> drivers/net/ethernet/marvell/octeontx2/af/rvu.c | 5 +++++
> drivers/net/ethernet/marvell/octeontx2/af/rvu.h | 1 +
> 2 files changed, 6 insertions(+)
Here is the summary with links:
- [1/2] octeontx2-af: Add a 'rvu_free_bitmap()' function
https://git.kernel.org/netdev/net/c/d863ca67bb6e
- [2/2] octeontx2-af: Fix some memory leaks in the error handling path of 'cgx_lmac_init()'
https://git.kernel.org/netdev/net/c/ecbd690b52dc
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2021-09-04 12:10 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-04 7:34 [PATCH 1/2] octeontx2-af: Add a 'rvu_free_bitmap()' function Christophe JAILLET
2021-09-04 7:34 ` [PATCH 2/2] octeontx2-af: Fix some memory leaks in the error handling path of 'cgx_lmac_init()' Christophe JAILLET
2021-09-04 12:10 ` [PATCH 1/2] octeontx2-af: Add a 'rvu_free_bitmap()' function patchwork-bot+netdevbpf
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).