Explorar o código

clk: rockchip: handle of_iomap failures in legacy clock driver

Check return value of of_iomap and handle errors correctly.

Signed-off-by: Arvind Yadav <arvind.yadav.cs@gmail.com>
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Arvind Yadav %!s(int64=9) %!d(string=hai) anos
pai
achega
023a8280b8
Modificáronse 1 ficheiros con 6 adicións e 1 borrados
  1. 6 1
      drivers/clk/rockchip/clk-rockchip.c

+ 6 - 1
drivers/clk/rockchip/clk-rockchip.c

@@ -49,14 +49,19 @@ static void __init rk2928_gate_clk_init(struct device_node *node)
 	}
 
 	reg = of_iomap(node, 0);
+	if (!reg)
+		return;
 
 	clk_data = kzalloc(sizeof(struct clk_onecell_data), GFP_KERNEL);
-	if (!clk_data)
+	if (!clk_data) {
+		iounmap(reg);
 		return;
+	}
 
 	clk_data->clks = kzalloc(qty * sizeof(struct clk *), GFP_KERNEL);
 	if (!clk_data->clks) {
 		kfree(clk_data);
+		iounmap(reg);
 		return;
 	}