Re: [PATCH] driver core: Free memory obtained by kzalloc

From: Arvind Yadav
Date: Thu Mar 01 2018 - 06:25:31 EST


Hi Andy,

sorry for noise.

On Thursday 01 March 2018 04:24 PM, Andy Shevchenko wrote:
On Thu, Mar 1, 2018 at 7:59 AM, Arvind Yadav <arvind.yadav.cs@xxxxxxxxx> wrote:
Here kfree() is taking NULL. So moving 'dev = NULL' after kfree().
Ouch! Does system_root_device_release() code ring a bell? How did you test this?
Yes, This is fine. put_device() will decrement a ref count.
So No need to call kfree() after put_device().

When you start eventually looking to the code?

NAK.

diff --git a/drivers/base/bus.c b/drivers/base/bus.c
index ef61833..ccb64a0 100644
--- a/drivers/base/bus.c
+++ b/drivers/base/bus.c
@@ -1170,9 +1170,9 @@ static int subsys_register(struct bus_type *subsys,

err_dev_reg:
put_device(dev);
- dev = NULL;
err_name:
kfree(dev);
+ dev = NULL;
err_dev:
bus_unregister(subsys);
return err;
Thanks for your review.