Commit a7082daa authored by Arvind Yadav's avatar Arvind Yadav Committed by Greg Kroah-Hartman

coresight: use put_device() instead of kfree()

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: default avatarArvind Yadav <arvind.yadav.cs@gmail.com>
Signed-off-by: default avatarMathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent a93e7b33
...@@ -1026,8 +1026,10 @@ struct coresight_device *coresight_register(struct coresight_desc *desc) ...@@ -1026,8 +1026,10 @@ struct coresight_device *coresight_register(struct coresight_desc *desc)
dev_set_name(&csdev->dev, "%s", desc->pdata->name); dev_set_name(&csdev->dev, "%s", desc->pdata->name);
ret = device_register(&csdev->dev); ret = device_register(&csdev->dev);
if (ret) if (ret) {
goto err_device_register; put_device(&csdev->dev);
goto err_kzalloc_csdev;
}
mutex_lock(&coresight_mutex); mutex_lock(&coresight_mutex);
...@@ -1038,8 +1040,6 @@ struct coresight_device *coresight_register(struct coresight_desc *desc) ...@@ -1038,8 +1040,6 @@ struct coresight_device *coresight_register(struct coresight_desc *desc)
return csdev; return csdev;
err_device_register:
kfree(conns);
err_kzalloc_conns: err_kzalloc_conns:
kfree(refcnts); kfree(refcnts);
err_kzalloc_refcnts: err_kzalloc_refcnts:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment