From: Ding Xiang <dingxi...@cmss.chinamobile.com>

In the error path of stm_source_register_device(), the kfree is
unnecessary, as the put_device() before it ends up calling
stm_source_device_release() to free stm_source_device, leading to
a double free at the outer kfree() call. Remove it.

Signed-off-by: Ding Xiang <dingxi...@cmss.chinamobile.com>
Signed-off-by: Alexander Shishkin <alexander.shish...@linux.intel.com>
Fixes: 7bd1d4093c2fa ("stm class: Introduce an abstraction for System Trace 
Module devices")
Link: 
https://lore.kernel.org/linux-arm-kernel/1563354988-23826-1-git-send-email-dingxi...@cmss.chinamobile.com/
Cc: sta...@vger.kernel.org # v4.4+
---
 drivers/hwtracing/stm/core.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/hwtracing/stm/core.c b/drivers/hwtracing/stm/core.c
index e55b902560de..181e7ff1ec4f 100644
--- a/drivers/hwtracing/stm/core.c
+++ b/drivers/hwtracing/stm/core.c
@@ -1276,7 +1276,6 @@ int stm_source_register_device(struct device *parent,
 
 err:
        put_device(&src->dev);
-       kfree(src);
 
        return err;
 }
-- 
2.23.0.rc1

Reply via email to