On Thu, Feb 13, 2014 at 10:14:00AM +0100, Krzysztof Kozlowski wrote:

> -     for (i = 0; i < S2MPS11_REGULATOR_CNT; i++)
> +     s2mps11->rdev = devm_kzalloc(&pdev->dev,
> +                     sizeof(*s2mps11->rdev)*rdev_num, GFP_KERNEL);
> +     if (!s2mps11->rdev)
> +             return -ENOMEM;

If we're using managed allocations do we actually need to keep the rdev
table at all?  We only normally use it to free.

> +     rdata = devm_kzalloc(&pdev->dev, sizeof(*rdata)*rdev_num, GFP_KERNEL);
> +     if (!rdata)
> +             return -ENOMEM;
> +

> +     /* rdata was needed only for of_regulator_match() during probe */
> +     if (rdata)
> +             devm_kfree(&pdev->dev, rdata);
> +

If this is always going to be freed within the probe path (in the same
function indeed) why is it a managed allocaton at all?

Attachment: signature.asc
Description: Digital signature

Reply via email to