Commit 60d865bd authored by Yang Yingliang's avatar Yang Yingliang Committed by Rob Herring
Browse files

of: property: decrement node refcount in of_fwnode_get_reference_args()



In of_fwnode_get_reference_args(), the refcount of of_args.np has
been incremented in the case of successful return from
of_parse_phandle_with_args() or of_parse_phandle_with_fixed_args().

Decrement the refcount if of_args is not returned to the caller of
of_fwnode_get_reference_args().

Fixes: 3e3119d3 ("device property: Introduce fwnode_property_get_reference_args")
Signed-off-by: default avatarYang Yingliang <yangyingliang@huawei.com>
Reviewed-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: default avatarFrank Rowand <frowand.list@gmail.com>
Link: https://lore.kernel.org/r/20221121023209.3909759-1-yangyingliang@huawei.com


Signed-off-by: default avatarRob Herring <robh@kernel.org>
parent 917c362b
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -993,8 +993,10 @@ of_fwnode_get_reference_args(const struct fwnode_handle *fwnode,
						       nargs, index, &of_args);
	if (ret < 0)
		return ret;
	if (!args)
	if (!args) {
		of_node_put(of_args.np);
		return 0;
	}

	args->nargs = of_args.args_count;
	args->fwnode = of_fwnode_handle(of_args.np);