[RESEND PATCH v2 3/3] ARM: EXYNOS: Add missing of_node_put() when parsing power domains

2015-04-22 Thread Krzysztof Kozlowski
From: Krzysztof Kozlowski k.kozlow...@samsung.com

Add missing of_node_put() to:
1. Error return path if allocating memory for exynos_pm_domain failed.
2. Second iteration over power domains if a child domain was not present
   or was incomplete.

Signed-off-by: Krzysztof Kozlowski k.kozlow...@samsung.com
Reported-by: Karol Wrona k.wr...@samsung.com

---
Changes since v1:
1. New patch.
---
 arch/arm/mach-exynos/pm_domains.c | 8 +---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/arch/arm/mach-exynos/pm_domains.c 
b/arch/arm/mach-exynos/pm_domains.c
index 61c32ccc9f7a..1a90c5da2fd7 100644
--- a/arch/arm/mach-exynos/pm_domains.c
+++ b/arch/arm/mach-exynos/pm_domains.c
@@ -138,6 +138,7 @@ static __init int exynos4_pm_init_power_domain(void)
if (!pd) {
pr_err(%s: failed to allocate memory for domain\n,
__func__);
+   of_node_put(np);
return -ENOMEM;
}
 
@@ -209,15 +210,15 @@ no_clk:
args.args_count = 0;
child_domain = of_genpd_get_from_provider(args);
if (!child_domain)
-   continue;
+   goto next_pd;
 
if (of_parse_phandle_with_args(np, power-domains,
 #power-domain-cells, 0, args) != 0)
-   continue;
+   goto next_pd;
 
parent_domain = of_genpd_get_from_provider(args);
if (!parent_domain)
-   continue;
+   goto next_pd;
 
if (pm_genpd_add_subdomain(parent_domain, child_domain))
pr_warn(%s failed to add subdomain: %s\n,
@@ -225,6 +226,7 @@ no_clk:
else
pr_info(%s has as child subdomain: %s.\n,
parent_domain-name, child_domain-name);
+next_pd:
of_node_put(np);
}
 
-- 
2.1.0

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[PATCH v2 3/3] ARM: EXYNOS: Add missing of_node_put() when parsing power domains

2015-03-27 Thread Krzysztof Kozlowski
Add missing of_node_put() to:
1. Error return path if allocating memory for exynos_pm_domain failed.
2. Second iteration over power domains if a child domain was not present
   or was incomplete.

Signed-off-by: Krzysztof Kozlowski k.kozlow...@samsung.com
Reported-by: Karol Wrona k.wr...@samsung.com

---
Changes since v1:
1. New patch.
---
 arch/arm/mach-exynos/pm_domains.c | 8 +---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/arch/arm/mach-exynos/pm_domains.c 
b/arch/arm/mach-exynos/pm_domains.c
index 61c32ccc9f7a..1a90c5da2fd7 100644
--- a/arch/arm/mach-exynos/pm_domains.c
+++ b/arch/arm/mach-exynos/pm_domains.c
@@ -138,6 +138,7 @@ static __init int exynos4_pm_init_power_domain(void)
if (!pd) {
pr_err(%s: failed to allocate memory for domain\n,
__func__);
+   of_node_put(np);
return -ENOMEM;
}
 
@@ -209,15 +210,15 @@ no_clk:
args.args_count = 0;
child_domain = of_genpd_get_from_provider(args);
if (!child_domain)
-   continue;
+   goto next_pd;
 
if (of_parse_phandle_with_args(np, power-domains,
 #power-domain-cells, 0, args) != 0)
-   continue;
+   goto next_pd;
 
parent_domain = of_genpd_get_from_provider(args);
if (!parent_domain)
-   continue;
+   goto next_pd;
 
if (pm_genpd_add_subdomain(parent_domain, child_domain))
pr_warn(%s failed to add subdomain: %s\n,
@@ -225,6 +226,7 @@ no_clk:
else
pr_info(%s has as child subdomain: %s.\n,
parent_domain-name, child_domain-name);
+next_pd:
of_node_put(np);
}
 
-- 
1.9.1

--
To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html