If cpufreq_generic_init() fails we jump into the resource
cleanup path which contains a of_node_put() call. Another
instance of this has already been called at that time
resulting a double decrement of the refcount.
Fix this by calling of_node_put() only after we are sure
that nothing has gone wrong.
Fixes:
d2f31f1da54f "cpufreq: cpu0: Move per-cluster initialization code to ->init()"
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
else
priv->cdev = cdev;
}
- of_node_put(np);
priv->cpu_dev = cpu_dev;
priv->cpu_reg = cpu_reg;
if (ret)
goto out_cooling_unregister;
+ of_node_put(np);
+
return 0;
out_cooling_unregister: