On 02.06.2020 10:21, Krzysztof Kozlowski wrote: >> +static struct icc_node *exynos_icc_get_parent(struct device_node *np) >> +{ >> + struct of_phandle_args args; >> + int num, ret; >> + >> + num = of_count_phandle_with_args(np, "samsung,interconnect-parent", >> + "#interconnect-cells"); >> + if (num != 1) >> + return NULL; /* parent nodes are optional */ >> + >> + ret = of_parse_phandle_with_args(np, "samsung,interconnect-parent", >> + "#interconnect-cells", 0, &args); >> + if (ret < 0) >> + return ERR_PTR(ret); >> + >> + of_node_put(args.np); >> + >> + return of_icc_get_from_provider(&args); > I think of_node_put() should happen after of_icc_get_from_provider(). Indeed, thanks, I will amend that. It seems the node reference count decrementing is often not done properly after existing calls to of_parse_phandle_with_args(). -- Thanks, Sylwester