PM / clk: ensure we don't allocate a -ve size of count clks
authorColin Ian King <colin.king@canonical.com>
Sat, 16 Apr 2016 12:50:03 +0000 (13:50 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Tue, 26 Apr 2016 19:11:35 +0000 (21:11 +0200)
It is entirely possible for of_count_phandle_wit_args to
return a -ve error return value so we need to check for this
otherwise we end up allocating a negative number of clk objects.

Signed-off-by: Colin Ian King <colin.king@canonical.com>
Acked-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/base/power/clock_ops.c

index 0e64a1b5e62a0a768b568da8ed7dbc6554e11060..3657ac1cb801509e1715a0e0841c7c3920cf4595 100644 (file)
@@ -159,7 +159,7 @@ int of_pm_clk_add_clks(struct device *dev)
 
        count = of_count_phandle_with_args(dev->of_node, "clocks",
                                           "#clock-cells");
-       if (count == 0)
+       if (count <= 0)
                return -ENODEV;
 
        clks = kcalloc(count, sizeof(*clks), GFP_KERNEL);