Skip to contentSkip to conversation

fsl/fman: fix a leak in tgec_free()

PATCH Applied Dan Carpenter 3 participants 3 messages Nov 24, 2016 – Nov 26, 2016

Subsystems (4)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 fsl/fman: fix a leak in tgec_free()

We set "tgec->cfg" to NULL before passing it to kfree(). There is no need to set it to NULL at all. Let's just delete it.

Fixes 57ba4c9b56d8 ("fsl/fman: Add FMan MAC support")

---
I haven't tested this. It occurs to me that this code might be something to paper over a use after free bug by changing it to a leak instead.

It applies to net-master.

drivers/net/ethernet/freescale/fman/fman_tgec.c +0 -3
index efabb04..4b0f3a5 100644
@@ -722,9 +722,6 @@ int tgec_free(struct fman_mac *tgec)
 {
 	free_init_resources(tgec);
 
-	if (tgec->cfg)
-		tgec->cfg = NULL;
-
 	kfree(tgec->cfg);
 	kfree(tgec);
 
#1 lore raw
Quoted 10 lines

-----Original Message-----
From: Dan Carpenter [mailto:[email protected]]
Sent: Thursday, November 24, 2016 1:21 PM
To: Madalin-Cristian Bucur <[email protected]>; Igal Liberman <[email protected]>
Cc: [email protected]; [email protected]
Subject: [patch] fsl/fman: fix a leak in tgec_free()

We set "tgec->cfg" to NULL before passing it to kfree(). There is no need to set it to NULL at all. Let's just delete it.

Agree, thanks.

Quoted 24 lines
Fixes 57ba4c9b56d8 ("fsl/fman: Add FMan MAC support")

---
I haven't tested this. It occurs to me that this code might be something to paper over a use after free bug by changing it to a leak instead.

It applies to net-master.

drivers/net/ethernet/freescale/fman/fman_tgec.c +0 -3
index efabb04..4b0f3a5 100644
@@ -722,9 +722,6 @@ int tgec_free(struct fman_mac *tgec)
 {
 	free_init_resources(tgec);
 
-	if (tgec->cfg)
-		tgec->cfg = NULL;
-
 	kfree(tgec->cfg);
 	kfree(tgec);