On Thu, Sep 15, 2016 at 08:38:44PM +0530, Viresh Kumar wrote:
On 15-09-16, 15:47, Mark Brown wrote:
On Thu, Sep 15, 2016 at 04:47:01PM +0530, Viresh Kumar wrote:
Fix the kernel warnings and crashes by moving away from managed regulator bulk get API by using regulator_bulk_get() and explicitly calling regulator_put() for all the supplies in exit paths.
Moving away from regulator bulk get to regulator bulk get?
Moving away from "managed" regulator bulk get to regulator bulk get? Isn't this how we call the devm_* APIs as?
That's really unclearly worded (especially since one uses the function name and the other doesn't).
- ret = devm_regulator_bulk_get(wm8994->dev, wm8994->num_supplies,
- ret = regulator_bulk_get(wm8994->dev, wm8994->num_supplies, wm8994->supplies);
+err_regulator_put:
- for (i = wm8994->num_supplies - 1; i >= 0; i--)
regulator_put(wm8994->supplies[i].consumer);
Why are you unwinding regulator_bulk_get() with an open coded regulator_bulk_put()?
Because there is no regulator_bulk_put(). Should I add it?
I mean regulator_bulk_free() there.