linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH RFC] bcma: simplify freeing cores (internal devices structs)
@ 2015-01-16 21:47 Rafał Miłecki
  2015-01-18 18:26 ` Hauke Mehrtens
  0 siblings, 1 reply; 3+ messages in thread
From: Rafał Miłecki @ 2015-01-16 21:47 UTC (permalink / raw)
  To: linux-wireless; +Cc: Hauke Mehrtens, Saul St. John, Rafał Miłecki

Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
---
This code was introduced by Saul in
ee91592711ed90a1abfbb1b2ceadded11d685164
bcma: don't leak memory for PCIE, MIPS, GBIT cores

I don't really see reason for making it in so complicated way.
I tested my patch for crashes, but didn't really try kmemleak.
Is my simple solution OK? Or am I missing something? Anyone?
---
 drivers/bcma/main.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/drivers/bcma/main.c b/drivers/bcma/main.c
index c3c5e0a..58dd582 100644
--- a/drivers/bcma/main.c
+++ b/drivers/bcma/main.c
@@ -371,6 +371,8 @@ static void bcma_unregister_cores(struct bcma_bus *bus)
 		list_del(&core->list);
 		if (core->dev_registered)
 			device_unregister(&core->dev);
+		else
+			kfree(core);
 	}
 	if (bus->hosttype == BCMA_HOSTTYPE_SOC)
 		platform_device_unregister(bus->drv_cc.watchdog);
@@ -467,7 +469,6 @@ int bcma_bus_register(struct bcma_bus *bus)
 
 void bcma_bus_unregister(struct bcma_bus *bus)
 {
-	struct bcma_device *cores[3];
 	int err;
 
 	err = bcma_gpio_unregister(&bus->drv_cc);
@@ -478,15 +479,7 @@ void bcma_bus_unregister(struct bcma_bus *bus)
 
 	bcma_core_chipcommon_b_free(&bus->drv_cc_b);
 
-	cores[0] = bcma_find_core(bus, BCMA_CORE_MIPS_74K);
-	cores[1] = bcma_find_core(bus, BCMA_CORE_PCIE);
-	cores[2] = bcma_find_core(bus, BCMA_CORE_4706_MAC_GBIT_COMMON);
-
 	bcma_unregister_cores(bus);
-
-	kfree(cores[2]);
-	kfree(cores[1]);
-	kfree(cores[0]);
 }
 
 /*
-- 
1.8.4.5


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2015-01-18 21:46 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-01-16 21:47 [PATCH RFC] bcma: simplify freeing cores (internal devices structs) Rafał Miłecki
2015-01-18 18:26 ` Hauke Mehrtens
2015-01-18 21:46   ` Rafał Miłecki

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).