Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit be5acd24 authored by Arvind Yadav's avatar Arvind Yadav Committed by Bjorn Andersson
Browse files

rpmsg: smd: use put_device() if device_register fail



if device_register() returned an error! Always use put_device()
to give up the reference initialized. unregister device for
other return error.

Signed-off-by: default avatarArvind Yadav <arvind.yadav.cs@gmail.com>
Signed-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
parent a9011726
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -1408,6 +1408,7 @@ struct qcom_smd_edge *qcom_smd_register_edge(struct device *parent,
	ret = device_register(&edge->dev);
	if (ret) {
		pr_err("failed to register smd edge\n");
		put_device(&edge->dev);
		return ERR_PTR(ret);
	}

@@ -1428,7 +1429,7 @@ struct qcom_smd_edge *qcom_smd_register_edge(struct device *parent,
	return edge;

unregister_dev:
	put_device(&edge->dev);
	device_unregister(&edge->dev);
	return ERR_PTR(ret);
}
EXPORT_SYMBOL(qcom_smd_register_edge);