Commit 4f340efc authored by Gustavo A. R. Silva's avatar Gustavo A. R. Silva Committed by Stephen Boyd

clk: zynqmp: Fix memory allocation in zynqmp_clk_setup

Fix memory allocation and use struct_size() in kzalloc(). This also
fixes the allocation size to be correct, and smaller, because before we
were allocating a bunch of sizeof(struct clk_hw_onecell_data) structures
for each struct clk_hw we needed.

Fixes: 3fde0e16 ("drivers: clk: Add ZynqMP clock driver")
Cc: stable@vger.kernel.org
Signed-off-by: default avatarGustavo A. R. Silva <gustavo@embeddedor.com>
Acked-by: default avatarMichal Simek <michal.simek@xilinx.com>
[sboyd@kernel.org: Expand commit text]
Signed-off-by: default avatarStephen Boyd <sboyd@kernel.org>
parent d39eca54
...@@ -669,8 +669,8 @@ static int zynqmp_clk_setup(struct device_node *np) ...@@ -669,8 +669,8 @@ static int zynqmp_clk_setup(struct device_node *np)
if (ret) if (ret)
return ret; return ret;
zynqmp_data = kzalloc(sizeof(*zynqmp_data) + sizeof(*zynqmp_data) * zynqmp_data = kzalloc(struct_size(zynqmp_data, hws, clock_max_idx),
clock_max_idx, GFP_KERNEL); GFP_KERNEL);
if (!zynqmp_data) if (!zynqmp_data)
return -ENOMEM; return -ENOMEM;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment