Messages in this thread Patch in this message | | | From | Arvind Yadav <> | Subject | [PATCH 1/4] base: soc: use put_device() instead of kfree() | Date | Sun, 11 Mar 2018 11:25:48 +0530 |
| |
Never directly free @dev after calling device_register(), even if it returned an error! Always use put_device() to give up the reference initialized.
Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com> --- drivers/base/soc.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/drivers/base/soc.c b/drivers/base/soc.c index 4e80f48..10b280f 100644 --- a/drivers/base/soc.c +++ b/drivers/base/soc.c @@ -150,6 +150,8 @@ struct soc_device *soc_device_register(struct soc_device_attribute *soc_dev_attr out3: ida_simple_remove(&soc_ida, soc_dev->soc_dev_num); + put_device(&soc_dev->dev); + soc_dev = NULL; out2: kfree(soc_dev); out1: -- 2.7.4
| |