From: Jordan Crouse <jcrouse@codeaurora.org>
Date: Mon, 22 Jan 2018 18:10:45 +0000 (-0700)
Subject: drm/msm/gpu: Set number of clocks to 0 if the list allocation fails
X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=9d20a0e6a8f4edf37d75f3bca41f99f52a440c22;p=linux.git

drm/msm/gpu: Set number of clocks to 0 if the list allocation fails

If we fail to allocate gpu->grp_clks reset the number of available
clocks to zero to avoid referencing the missing array later.

Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
Signed-off-by: Rob Clark <robdclark@gmail.com>
---

diff --git a/drivers/gpu/drm/msm/msm_gpu.c b/drivers/gpu/drm/msm/msm_gpu.c
index 8078e4d52fe04..1c09acfb4028d 100644
--- a/drivers/gpu/drm/msm/msm_gpu.c
+++ b/drivers/gpu/drm/msm/msm_gpu.c
@@ -682,8 +682,10 @@ static int get_clocks(struct platform_device *pdev, struct msm_gpu *gpu)
 
 	gpu->grp_clks = devm_kcalloc(dev, sizeof(struct clk *), gpu->nr_clocks,
 		GFP_KERNEL);
-	if (!gpu->grp_clks)
+	if (!gpu->grp_clks) {
+		gpu->nr_clocks = 0;
 		return -ENOMEM;
+	}
 
 	of_property_for_each_string(dev->of_node, "clock-names", prop, name) {
 		gpu->grp_clks[i] = get_clock(dev, name);